Auf den nächsten Seiten ist eine Beispielimplementation des
Pattern klassenbasierter Adapter zu sehen. Dieses Entwurfsmuster wird
verwendet, um 2 Klassen mit unterschiedlichen Schnittstellen anzupassen. Der
klassenbasierte Adapter erreicht dies mit Hilfe der Mehrfachvererbung.
Eine bereits existierende Klasse, deren Schnittstelle nicht das gewünschte
Aussehen besitzt, wird mit Hilfe des Adapters in die Zielklasse
eingebunden, sodaß die Funktionalität der adaptierten Klasse in der
Zielklasse zur Verfügung steht.
|
Abb. 1: Das Adapter (klassenbasiert) Design Pattern
|
Der Methodenaufruf gestaltet sich folgendermaßen :
Durch die Mehrfachvererbung sind dem Adapter die Methoden der
Zielklasse und und der adaptierten Klasse bekannt. Die spezifischen
Operationen (Methoden) der adaptierten Klasse werden im Rumpf der jeweiligen
Methoden der Zielklasse aufgerufen. (siehe Muster).
|