本文将介绍一对特殊的字节流:FilterInputStream与FilterOutputStream,以及它们与装饰模式之间的联系。
FilterInputStream、FilterOutputStream是过滤器字节输入输出流。它们的主要用途在于封装其他的输入输出流,为它们提供一些额外的功能。
FilterInputStream
下面我们以FilterInputStream为例来学习下FilterInputStream与装饰模式的关系。
FilterInputStream.java
package java.io;
public class FilterInputStream extends InputStream {
protected volatile InputStream in;
protected FilterInputStream(InputStream in) {
this.in = in;
}
public int read() throws IOException {
return in.read();
}
public int

本文探讨了Java8中FilterInputStream和FilterOutputStream作为过滤器字节流的作用,它们用于封装其他输入输出流并提供额外功能。FilterInputStream作为抽象构件,通过子类如BufferedInputStream实现装饰模式,增强原有流的功能。装饰功能的关键在于内部持有InputStream实例。FilterOutputStream的工作原理类似。文章总结了这两个类在装饰模式中的角色和应用。
1730

被折叠的 条评论
为什么被折叠?



