学校のレポートでは、java.io.ReaderパッケージがDecorator patternをどのように実装しているか説明する必要があります。私はjava.ioパッケージ(例えばhere)について複数の説明を見てきましたが、java.io.Readerパッケージ(それが異なっていても)については説明していません。ここに私が今いるのは、私はこのデザインが正しく表示されていないことを知っていますが、java.io.Readerパッケージが実際にどのように実装しているかはわかりません。デコレータパターンjava.io.reader
したがって、この場合にはReader
はComponent
、InputStreamReader
Concrete Component
、BufferedReader
Decorator
とLineNumberReader
Concrete Decorator
だろう。再び、私はこれが間違っていることを知っていますが、正しく表示する方法はわかりません。
ケースは正しいです。 BufferedReaderに '<>'を追加することができます。個人的には、これをデコレータパターンの例とは言いません。プロが主張するもの:BufferedReaderは他のReaderをラップします。また、インターフェイスではありませんが、同様の図を作成するLineNumberReaderがあります。コンストラクタパラメータ_と同じインタフェースにデリゲートすると、_ "decorates" _と主張できます。 –
LineNumberReaderを追加するのは少し似ていますが、同様の図があるだけです。 –