FilterInputStream FilterOutputStream都是装饰器模式中的Decorator抽象装饰角色
他们继承了各自的抽象构建InputStream 和OutputStream
![]() |
他们内部都包含了一个抽象构建![]() |
FilterInputStream FilterOutputStream 既然作为抽象的装饰器角色存在
所以他们也不太可能有什么实质性的方法
FilterInputStream中的所有方法 都使用的是内部的in来转发调用
FilterOutputStream也是一样,几乎所有的请求都是转发给了内部的out对象
不过有一个特殊的地方
看得出来,内部的三个参数版本的write 并没有调用out对象的三个参数的write
仍旧是调用一个参数的write
文档的含义是,子类应该重写此方法以提供更好地实现
本文探讨了装饰器模式在Java IO流中的应用,具体分析了FilterInputStream与FilterOutputStream的角色及其实现方式。文中指出这两个类作为装饰器模式中的抽象装饰者,它们内部包含了一个抽象构建,并且几乎所有方法都通过转发调用来实现,但FilterOutputStream的三个参数版本write方法是个例外。




1260

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



