Java Reference
In-Depth Information
ZuAdaptierendeKlasse
Die Klasse ZuAdaptierendeKlasse bietet ihre Operationen mit Schnittstellen an,
die nicht kompatibel sind mit den Schnittstellen, die der Client erwartet, um die Klasse
benutzen zu können.
Client
Der Client möchte die bereits vorhandene (zu adaptierende Klasse) nutzen, hat aber
auf Grund seiner Anforderungen eine für die Nutzung der zu adaptierenden Klasse
inkompatible Schnittstelle.
IZiel
Das Interface IZiel entspricht den Anforderungen des Clients. Dieses Interface muss
implementiert werden. Da das Interface IZiel nicht identisch mit der Schnittstelle der
Klasse ZuAdaptierendeKlasse ist, wird ein Adapter benötigt.
Adapter
Die Klasse Adapter übernimmt die Anpassung an die vom Client benötigte Schnitt-
stelle, indem sie die Schnittstelle des Clients auf die Schnittstelle der zu adaptierenden
Klasse abbildet. Ein Objekt der Klasse Adapter ermöglicht die Kommunikation zwi-
schen dem Client und einem Objekt der zu adaptierenden Klasse.
4.3.3.3 Dynamisches Verhalten
Das Client-Objekt ruft eine Operation des Adapter-Objekts auf. Dieses leitet den Aufruf
an das Objekt der zu adaptierenden Klasse weiter, indem es eine Operation der zu
adaptierenden Klasse aufruft, die das Richtige tut, aber eine falsche Schnittstelle hat.
Das Ergebnis wird von dem Objekt der zu adaptierenden Klasse über das Adapter-Ob-
jekt an das Client-Objekt zurückgegeben. Dies zeigt das folgende Sequenzdiagramm:
:Client
:Adapter
:ZuAdaptierendeKlasse
operationA()
operationB()
operationB() : result
operationA() : result
Bild 4-3 Sequenzdiagramm des Adapter-Musters
Search WWH ::




Custom Search