Junior — Middle
Obyekt yönümlü proqramlaşdırmada metodun yüklənməsi ilə onun üst-üstə qoyulması necə fərqləndirilir?
sobes.tech Süni İntellekt
AI-dan cavab
Yöntem yükləməsi (overloading) və metodun üst-üstə düşməsi (overriding) obyekt yönümlü proqramlaşdırmada fərqli anlayışlardır:
-
Yöntem yükləməsi: eyni sinifdə, müxtəlif parametrlərlə (növ, say) eyni adlı bir neçə metodun olmasıdır. Bu, müxtəlif arqumentlərlə metodun çağırılmasına imkan verir.
-
Yöntem üst-üstə düşməsi: bir alt sinifin, əsas sinifdə artıq müəyyən edilmiş və eyni imzaya (ad və parametrlər) malik metodun öz tətbiqini təqdim etməsidir. Bu, alt sinif üçün metodun davranışını dəyişdirməyə imkan verir.
Java nümunəsi:
class Animal {
void sound() {
System.out.println("Bəzi səs");
}
void sound(String mood) { // yükləmə
System.out.println("Səs " + mood);
}
}
class Dog extends Animal {
@Override
void sound() { // üst-üstə düşmə
System.out.println("Havlama");
}
}
Burada, sound() Dog sinifində əsas sinifin metodunu üst-üstə düşür və sound(String mood) eyni sinifdə metodun yüklənməsidir.