dedlfix: Klassenverständnis?

Beitrag lesen

echo $begrüßung;

[...] ich würde dir deshalb nahelegen, wenn du wirklich mit OOP in PHP anfangen willst zu arbeiten auf PHP5 umzusteigen - du hast dort einfach mehr Möglichkeiten.

Ich stimme zu. Im konkreten Beispiel deklariert man die Methode getText() der Klasse A als private, was dann zum gewünschten Ergebnis 'AB' führt. Durch das private kann B::getText() A::getText() nicht überschreiben, weil aus B ja A::getText() nicht sichtbar ist. Befindet man sich während der Ausführung nun in A::A() (was man auch über $this->A() statt parent::A() aufrufen kann), ist A::getText() sichtbar und wird aufgerufen.

echo "$verabschiedung $name";