Junior — Middle
Átírható-e a konstruktor az örökölt osztályban?
sobes.tech MI
Válasz az MI-től
Java-ban a konstruktorok nem öröklődnek, ezért nem lehet őket felülírni az alosztályokban. Azonban az alosztályban saját konstruktort lehet deklarálni a szükséges aláírással. Ha a szülő osztály konstruktorát kell hívni, akkor a super() kulcsszót használjuk.
Példa:
class Parent {
Parent(int x) {
// szülő konstruktor
}
}
class Child extends Parent {
Child(int x, int y) {
super(x); // szülő konstruktorának hívása
// további inicializálás
}
}
Így a konstruktor nem íródik felül, hanem egy újat hozunk létre az alosztályban, amely hívhatja a szülő konstruktorát.