Junior — Middle
Care este funcția operatorului super în contextul moștenirii și apelului metodelor sau constructorilor clasei de bază?
sobes.tech AI
Răspuns de la AI
Operatorul super în Java este utilizat pentru a accesa metodele sau constructorii clasei de bază (părinte) dintr-o subclasă.
Principalele utilizări ale super:
- Apelarea constructorului clasei de bază din constructorul subclasei pentru a inițializa partea obiectului definită în părintele.
- Apelarea unei metode suprascrise a clasei de bază dacă în subclasă trebuie să completeze sau să modifice comportamentul, păstrând o parte din logica părintelui.
Exemplu de utilizare a constructorului:
class Animal {
String name;
Animal(String name) {
this.name = name;
}
}
class Dog extends Animal {
Dog(String name) {
super(name); // apelarea constructorului Animal
}
}
Exemplu de apel al metodei clasei de bază:
class Animal {
void sound() {
System.out.println("Un sunet");
}
}
class Dog extends Animal {
@Override
void sound() {
super.sound(); // apelarea metodei clasei de bază
System.out.println("Lătrat");
}
}
Astfel, super ajută la gestionarea moștenirii și reutilizarea codului clasei de bază.