装饰者模式java.io.reader

时间:2017-10-28 21:58:07

标签: java decorator java-io

对于学校报告,我必须解释java.io.Reader包如何实现Decorator pattern。我已经看到了java.io包的多个解释(例如here),但没有看到java.io.Reader包的解释(如果它甚至有任何不同)。这就是我现在所拥有的,我知道这个设计没有正确显示,但我不确定java.io.Reader包实际上是如何实现它的。

decorator java.io.Reader

因此,在这种情况下,Reader将是ComponentInputStreamReaderConcrete ComponentBufferedReaderDecorator和{ {1}} LineNumberReader。我再次知道这是错的,但我不知道如何正确显示它。

1 个答案:

答案 0 :(得分:0)

图表是正确的。如果您可以访问Intellij(或其他功能强大的工具),您可以看到Java类型的UML类图。下面的代码就是这样一个图表。

enter image description here

如您所见,它与您的一致。我会考虑的一件事是BufferedReader一个具体装饰器,因为它在Reader上提供了额外的行为。