pl: Bild und Text kombiniert verschachteln

Beitrag lesen

DI:

# im Konstruktor
$f = new ForeignClass();
$m = new MyClass($f);

# nun kann $m die Fremd-Instanz nutzen
# Beachte jedoch: $f wurde vor der Kapselung erstellt
# damit ist es möglich, $m von außerhalb zu verändern!!!!

Zur Laufzeit, Factorymethode

$m = new MyClass();

# $m ruft eine eigene Methode
# erst da wird die ForeignClass
# eingebunden
$f->challenge();

In beiden Varianten ist $m->FremdInstanz das Ziel. Infolge dieser Aggregierung können Methoden der FremdInstanz an das Objekt der eigenen Klasse delegiert werden. D.h., die Methoden der fremden Klasse werden zu eigenen Methoden gemacht.

.