Mailinglisten-Archive |
Aloha,
> Von: Henning Jödden[SMTP:henning_(at)_wonderpixel.de]
>
> Wenn ich das richtig verstanden habe ist der Konstruktor einer Klasse
> eine Funktion mit dem selben Namen wie die Klasse, die beim
> instanzieren derselben automatisch aufgerufen/ausgeführt wird.
>
genau.
> Wenn ich ich nun in einer "unter"Klasse, die "haupt"Klasse instanziere
> und in einem Objekt der Unterklasse ablege, (wie beschrieben im Artikel
> bei http://www.waltersdorf.net/oopphp4.php) wird dann der Konstruktor
> der Hauptklasse nicht ausgeführt, weil die Unterklasse einen eigenen
> hat?
>
genau.
> zur Praxis:
.....
das ist dann genau das Problem, daß der Konstruktor der "Hauptklasse"
nicht ausgeführt wird.
Vermeiden kannst du das mit zusätzlicher Tiparbeit.
Hauptklasse:
class foo {
function foo($a) {
echo 'Konstruktor ausgeführt mit ' . $a . '!';
}
}
Abgeleitete Klasse:
class bar extends foo {
function bar($a) { # Konstr. der abgeleiteten Klasse
$this->foo($a); # ruft Konstruktor der Hauptklasse auf.
}
}
Grüße, Mathias
php::bar PHP Wiki - Listenarchive