Junior — Middle
Mi a szerepe a super operátornak az öröklődés és a bázisszintű metódusok vagy konstruktorok hívásakor?
sobes.tech MI
Válasz az MI-től
A super operátor Java-ban arra szolgál, hogy a származtatott (al) osztályból hozzáférjünk az ős (szülő) osztály módszereihez vagy konstruktoraihoz.
A super fő felhasználási módjai:
- Az ősosztály konstruktorának hívása a származtatott osztály konstruktorából, hogy inicializáljuk az objektum azon részét, amelyet az ős osztály határoz meg.
- Felülírt ősosztály metódusának hívása, ha a származtatott osztályban a viselkedést ki kell egészíteni vagy módosítani, miközben megőrizzük az ős logikájának egy részét.
Példa a konstruktor használatára:
class Animal {
String name;
Animal(String name) {
this.name = name;
}
}
class Dog extends Animal {
Dog(String name) {
super(name); // az Animal konstruktorának hívása
}
}
Példa az ősosztály metódusának hívására:
class Animal {
void sound() {
System.out.println("Valamilyen hang");
}
}
class Dog extends Animal {
@Override
void sound() {
super.sound(); // az ősosztály metódusának hívása
System.out.println("ugat");
}
}
Így a super segít az öröklődés kezelésében és az ősosztály kódjának újrahasznosításában.