Junior — Middle
Izskaidrojiet polimorfisma jēdzienu objektorientētajā programmēšanā un kā tas tiek īstenots kodā.
sobes.tech AI
Atbilde no AI
Objektorientētās programmēšanas daudzveidība ir spēja dažādu klases objektu reaģēt uz vienādiem ziņojumiem (metožu izsaukumiem) dažādi. Tas ļauj izmantot vienotu saskarni darbam ar dažādu tipu objektiem.
Java daudzveidība tiek īstenota caur mantošanu un metožu pārrakstīšanu. Piemēram, pamata klase deklarē metodi, un apakšklases to īsteno savādāk.
Piemērs:
class Animal {
void sound() {
System.out.println("Kāds skaņa");
}
}
class Dog extends Animal {
@Override
void sound() {
System.out.println("Rej");
}
}
class Cat extends Animal {
@Override
void sound() {
System.out.println("Mīca");
}
}
public class Main {
public static void main(String[] args) {
Animal a1 = new Dog();
Animal a2 = new Cat();
a1.sound(); // Izdrukās "Rej"
a2.sound(); // Izdrukās "Mīca"
}
}
Šeit, mainīgais tipa Animal var atsaukties uz dažādu apakšklasu objektu, un metodes sound() izsaukums tiks izpildīts atkarībā no objekta reālā tipa — tas ir daudzveidība.