Junior — Middle
Kaip Java pasiekiamas polimorfizmo mechanizmas ir kaip jį įgyvendinti kode?
sobes.tech AI
Atsakymas iš AI
Java kalbėje polimorfizmas pasiekiamas per paveldėjimą ir metodų perrašymą, taip pat per sąsajas. Tai leidžia skirtingų klasių objektams reaguoti į tas pačias metodų iškvietimus skirtingai.
Polimorfizmo įgyvendinimo pavyzdys:
class Animal {
void sound() {
System.out.println("Kažkoks garsas");
}
}
class Dog extends Animal {
@Override
void sound() {
System.out.println("Apsikabinimas");
}
}
class Cat extends Animal {
@Override
void sound() {
System.out.println("Miau");
}
}
public class Main {
public static void main(String[] args) {
Animal myDog = new Dog();
Animal myCat = new Cat();
myDog.sound(); // Išves: Apsikabinimas
myCat.sound(); // Išves: Miau
}
}
Čia, sound() metodas kviečiamas Animal tipo objektuose, tačiau iš tikrųjų vykdoma atitinkama tikrojo objekto klasės įgyvendinimas (Dog arba Cat). Tai yra polimorfizmas — viena sąsaja, daug įgyvendinimų.