Java文件写入使用哪种设计模式?

Kam*_*i81 0 design-patterns

例如,

PrintWriter writer = new PrintWriter(new BufferedWriter(new OutputStreamWriter(
                System.out)));
Run Code Online (Sandbox Code Playgroud)

这是方法链接模式吗?

Dez*_*igo 5

创建模式:
Java核心库中的GoF设计模式示例

在Java中,每个输入/输出类都被设计为可以很好地完成一项工作,并且多个类一起用于完成复杂的工作。
Java I / O类的工作方式遵循称为Decorator的一般模式

通过提供一些“精美的包装”,许多I / O类用于装饰另一个I / O类的对象。在第4章中,我们研究了策略的装饰器。这里,我们有另一种装饰器,但思路完全相同。

Writer的装饰器本身将是writer,并将提供其装饰的对象无法提供的某些其他服务。在这里,我们想使用PrintWriter,它知道如何编写Java程序已知的大部分内容。但是,打印作家实际上并不打印。

它只知道如何格式化您给它的东西(例如int)并将它们传递给它装饰的作家。我们必须将PrintWriter分层到FileWriter上,以将输出输出到文件中。这也很容易做到,尽管它也可能引发IOException。

PrintWriter output = new PrintWriter(new FileWriter("data.txt"));
Run Code Online (Sandbox Code Playgroud)

http://www.csis.pace.edu/~bergin/KarelJava2ed/ch10/index.html