Obyekt yönümlü proqramlaşdırmada metodun üst-üstə salınması ilə metodun yüklənməsi arasındakı fərq nədir?
sobes.tech Süni İntellekt
AI-dan cavab
Yöntem üst-üstə düşmə (overriding) — bu, əsas sinifdə artıq müəyyən edilmiş bir metodun alt sinif tərəfindən öz tətbiqinin təqdim olunmasıdır. Bu, alt sinif obyektləri üçün metodun davranışını dəyişməyə imkan verir.
Yöntəm yüklənməsi (overloading) — bu, eyni adla, lakin fərqli parametrlərlə (növ və ya say) bir neçə metodun yaradılmasıdır. Bəzi dillərdə (məsələn, Java, C++) bu dil səviyyəsində dəstəklənir, Python-da isə yüklənmə başqa cür həyata keçirilir, məsələn, standart parametrlər və ya metod daxilində tiplərin yoxlanması ilə.
Yüklənmənin nümunəsi:
class Animal:
def sound(self):
print("Bəzi səs")
class Dog(Animal):
def sound(self):
print("Havlama")
Python-da yüklənmə adətən aşağıdakı kimi təqlid edilir:
def add(a, b, c=None):
if c is not None:
return a + b + c
return a + b
Beləliklə, üst-üstə düşmə miras alınmış metodun davranışını dəyişir, və yüklənmə eyni metod adının müxtəlif parametrlər dəstləri ilə işləməsinə imkan verir.