Im PHP Constructors and Destructors documentation heißt esWerden Elternkonstruktoren aufgerufen, wenn eine Kindklasse keinen Konstruktor definiert?
Hinweis: Eltern Konstrukteuren nicht implizit, wenn das Kind Klasse einen Konstruktor definiert aufgerufen werden. Um einen übergeordneten Konstruktor auszuführen, ist ein Aufruf von parent :: __ construct() innerhalb des Kindkonstruktors erforderlich.
Was aber, wenn die Kindklasse keinen Konstruktor aufruft, wird der Elternkonstruktor noch aufgerufen? Oder sollten wir einen Konstruktor erstellen, der den übergeordneten Konstruktor trotzdem aufruft?
IE:
class BaseClass {
function __construct() {
print "In BaseClass constructor\n";
}
}
class SubClass extends BaseClass {
function __construct() {
parent::__construct();
}
}
Vielleicht [das Handbuch] (http://www.php.net/manual/en/language.oop5.decon.php) wurde in jüngerer Zeit aktualisiert, aber es heißt, "Wenn das Kind nicht definiert Konstruktor kann dann wie eine normale Klassenmethode von der Elternklasse geerbt werden (wenn sie nicht als privat deklariert wurde). " – MrWhite
@ w3d Es war danke für das Update :). –
Können Sie einen Konstruktor sogar als privat deklarieren? Das scheint den Zweck zu besiegen, überhaupt eine Klasse zu haben. – eggmatters