Für eine Zuordnung muss ich herausfinden, welche der Gang of Four Entwurfsmuster die Klassen java.io.Reader
und ihre Unterklassen java.io.PushbackReader
, java.io.BufferedReader
und java.io.FilterReader
mit gebaut wurden.
Nach diesem Beitrag wäre das Entwurfsmuster das Dekorateurmuster. Dies macht nur Sinn für mich , wenn PushbackReader
, BufferedReader
und FilterReader
kann eingerichtet werden , die gleichzeitig verwendet werden, wodurch effektiv ein BufferedPushbackFilterReader
. Ist das die Idee?
java
design-patterns
Gemeinschaft
quelle
quelle
Buffered
Natur über dieFilter
Natur stapeln ?Antworten:
Ja, so kann man sie auch dekorieren. Betrachten Sie einfach das folgende
Das würde einen originellen Leser dazu schmücken
FilterReader
undReader
sind Basisklassen in der Hierarchie ...quelle
BufferedReader
,FilterReader
undPushbackReader
sind Dekorateure vonReader
, nicht wahr?Das Dekorationsmuster gilt hier, weil es
BufferedReader
einReader
- es ist immer noch einReader
(es hat alle Methoden vonReader
), aber es hat mehr "Schnickschnack" (mehr Methoden).Das folgende Beispiel zeigt, wie eine Klasse die Funktionalität der Klasse "dekoriert", die sie umschließt, und Sie können sie verketten, um die Dekoration fortzusetzen:
quelle