Eine Unterklasse kann einen durch ihre Oberklasse definierten Konstruktor in der Form super(parameter-list); aufrufen.
Parameterliste muss die vom Superklassenkonstruktor benötigten Parameter angeben.
Die erste Anweisung, die im Konstruktor einer Unterklasse ausgeführt wird, muss immer super(); (oder super(parameter-list); wenn es notwendig ist, Parameter zu übergeben).
Das Folgende ist eine Version von TwoDShape mit einem Konstruktor, der Breite und Höhe initialisiert.
Die Triangle-Unterklasse verwendet super(w, h), um den Konstruktor der TwoDShape-Superklasse aufzurufen und die Werte von w und h zu übergeben.
Der Konstruktor von TwoDShape initialisiert Breite und Höhe mit diesen Werten.
Die Triangle-Unterklasse muss Breite und Höhe nicht initialisieren, sondern nur den Stilwert, der exklusiv für sie gilt.
Mit super( ) kann die Superklasse (TwoDShape) nach Wunsch ihr eigenes Unterobjekt erstellen und Funktionalität hinzufügen, ohne dass die Unterklasse die Details kennen muss.
Jede durch die Superklasse definierte Konstruktorform kann mit super( ) aufgerufen werden. Der ausgeführte Konstruktor ist derjenige, dessen Argumente mit den angegebenen Parametern übereinstimmen.
Das folgende Beispiel zeigt erweiterte Versionen von TwoDShape und Triangle mit Standardkonstruktoren und Konstruktoren, die ein Argument akzeptieren.
Aufruf des Superklassen-Konstruktors: Wenn eine Unterklasse super( ) aufruft, ruft sie den Konstruktor ihrer unmittelbaren Superklasse auf.
Referenz auf unmittelbare Superklasse: super( ) verweist immer auf die Superklasse direkt über der Klasse, die sie aufruft, auch in mehrstufigen Hierarchien.
Erste Anweisung im Konstruktor: super( ) muss die erste Anweisung sein, die im Konstruktor einer Unterklasse ausgeführt wird. Dadurch wird sichergestellt, dass der Oberklassenteil des Objekts initialisiert wird, bevor der Unterklassenkonstruktor seinen eigenen Code ausführt.
Das obige ist der detaillierte Inhalt vonVerwenden von super zum Aufrufen von Superklassenkonstruktoren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!