Java Reference
In-Depth Information
Daten des Dekorierers
Die Konstruktion des Dekorieres mittels Vererbung und Aggregation führt dazu, dass
ein Dekorierer drei verschiedene Datenanteile umfasst: einen geerbten, unveränderten
Anteil, einen eigenen, erweiternden Anteil und einen Anteil, auf den der Dekorierer
über die Aggregation zugreifen kann. Diese Anteile sind in Bild 4-8 dargestellt:
unveränderter
Vererbungsanteil
eigener
Erweiterungsanteil
über Aggregation
zur Verfügung
gestellter Anteil
Bild 4-8 Aufbau eines Dekorierers
Bei den Daten hat der Dekorierer drei Anteile, den Vererbungsan-
teil, den Erweiterungsanteil und den aggregierten Anteil.
Unter dem Erweiterungsanteil sind Daten zu verstehen, welche zur Erfüllung einer
weiteren Funktionalität den Dekorierer erweitern. Im Rahmen dieses Musters werden
sie weggelassen. Erweiternde Daten müssen hier nicht weiter betrachtet werden. Sie
werden im Rahmen des Musters automatisch weggecasted.
Die beiden anderen Anteile sind auf den ersten Blick gleichartige Datenanteile: Der
von der Klasse Komponente geerbte und der über die Aggregation von einem Objekt
vom Typ Komponente bereitgestellte Anteil. Der geerbte Anteil ist statisch und somit
fix und kann immer nur die in der Klasse Komponente definierten Attribute umfassen.
Der über die Aggregation bereitgestellte Anteil ist dynamisch und daher flexibel und
kann nach Liskov auch Attribute der Objekte von Subklassen der Klasse Komponente
umfassen.
Nur über den dynamischen Anteil ist der Dekorierer in der Lage,
Objekte von beliebigen konkreten Komponenten zu dekorieren.
Der geerbte Anteil darf daher nicht benutzt werden und ist im De-
korierer überflüssig.
Search WWH ::




Custom Search