Senior
Erzähle von der Funktion super() und wann du sie benutzt?
sobes.tech KI
Antwort von AI
Die Funktion super() wird in Klassen verwendet, um den Konstruktor der Elternklasse oder die Methoden des Elternteils aufzurufen.
Sie wird in zwei Hauptfällen angewendet:
-
Im Konstruktor einer Unterklasse, um den Konstruktor der Basisklasse aufzurufen und eine korrekte Initialisierung der vererbten Eigenschaften sicherzustellen.
-
Um die Methoden des Elternteils aufzurufen, wenn das Verhalten erweitert oder überschrieben werden soll, dabei aber ein Teil der Logik der Basisklasse erhalten bleibt.
Beispiel:
class Animal {
constructor(name) {
this.name = name;
}
speak() {
console.log(`${this.name} macht ein Geräusch.`);
}
}
class Dog extends Animal {
constructor(name, breed) {
super(name); // Aufruf des Konstruktors von Animal
this.breed = breed;
}
speak() {
super.speak(); // Aufruf der Methode speak von Animal
console.log(`${this.name} bellt.`);
}
}
Ohne den Aufruf von super() im Konstruktor der Unterklasse tritt ein Fehler auf, da die Basisklasse nicht initialisiert ist.