 | Die Methode new wird typischerweise nur in
der Basisklasse definiert. Die Initialisierungen
der verwendeten Erweiterung von Logger erfolgt dann
in der von new aufgerufenen Methode initialize.
|
 | Da sowohl die Basisklasse (hier: Logger) als
auch die abgeleitete Implementierung (hier: Logger::Logfile)
Parameter für die Initialisierung benötigen,
empfiehlt sich die Verwendung eines assoziativen
Arrays für die Übergabe. Das erlaubt die Benennung
der Parameter und die Verwendung von Voreinstellungen.
|
 | Dies wird alles in der Basisklasse organisiert.
Abgeleitete Implementierungen müssen nur defaults
und initialize definieren.
|
 | Falls es noch Ableitungen einer abgeleiteten Klasse
hinzukommen, dann sollte initialize dort die
Methode initialize der übergeordneten Klasse
aufrufen. Das geht mit SUPER::initialize.
|