- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
FilterOutputStream
在 Java 中的实际用法是什么?来自 javadocs:
This class is the superclass of all classes that filter output streams. These streams sit on top of an already existing output stream (the underlying output stream) which it uses as its basic sink of data, but possibly transforming the data along the way or providing additional functionality.
对我来说,它似乎具有与 OutputStream
相同的方法(也许它出于某种原因覆盖了它们?)。它提供什么样的数据“转换”,什么时候可以在自己的 Java 应用程序中使用它?
最佳答案
Joshua Bloch 在 Effective Java Item 16: Favor composition over inheritance 中解释了为什么继承并不总是完成这项工作的最佳工具。通常使用 Decorator 更有效图案。 FilterOutputStream 和 FilterInputStream 是实现此模式的基础。例如我想阻止 OutputStream.close。这是我能做的
class NonCloseableOutputStream extends FilterOutputStream {
public NonCloseableOutputStream(OutputStream out) {
super(out);
}
@Override
public void close() throws IOException {
// ignore
}
}
现在我的类可以接受 OutputStream 的任何子类并使其不可关闭。
关于java - FilterOutputStream 的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17563658/
我希望在输出流上使用两个不同的过滤器。假设以下是过滤器。 public class FilterStream1 extends FilterOutputStream { } public class
FilterOutputStream 在 Java 中的实际用法是什么?来自 javadocs: This class is the superclass of all classes that fi
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭 9 年前。 Improv
我有一段代码将输出流拆分到两个目的地。他们都去一个文件,但第二个目的地将通过过滤器。我试图弄清楚为什么简单地包装 FilterOutputStream 而不覆盖任何方法会增加巨大的性能损失。 我创建了
Java 的 FilterOutputStream 是 Java 中 Stream 装饰器模式的一部分。它是中间的基础装饰器类。 来自文档: The class FilterOutputStream
这是对 Java 8 中的 FilterOutputStream.close() 方法的更改,这给我们带来了一些问题。 (参见 http://hg.openjdk.java.net/jdk8/jdk8
为什么这段代码不起作用,除非我取消注释 System.out.print(""); 行? 3个案例: System.out.print(""); 在 outprint.write(var); 之后产生
我刚发现FilterInputStream(InputStream)具有与 FilterOutputStream(OutputStream) 的访问修饰符 (protected) 不同的访问修饰符 (
System.out 和System.err 都是PrintStream;并且 PrintStream 扩展了 FilterOutputStream。 来自 FilterOutputStream 的
上下文 我正在尝试在数据传输期间获得反馈。会出现不同的情况,但我正在处理的特定情况是 FileInputStream 到 FileOutputStream 的复制。 实际的流复制循环是用 org.ap
我是一名优秀的程序员,十分优秀!