java - 接口(interface)寻找诸如 Appendable 或 OutputStream 之类的东西

标签 java interface io

嗯。我正在尝试编写一个接受字节的类,并希望为此目的实现一个众所周知的接口(interface)。

java.io.OutputStream是一个抽象类,而不是一个接口(interface)(为什么???),这让我感到紧张,因为我不知道扩展它的后果是什么。如果没有什么后果的话,它应该是一个接口(interface)。否则,它让我认为它定义了 equals() 和 hashCode() ,或者可能是与可序列化相关的行为之一,并且我有一些东西在尝试扩展它之前应该了解一下。无论如何,如果我扩展它,这意味着我已经用完了我的 1 个父类(super class),并且无法扩展对我的应用程序更重要的其他内容。

java.lang.Appendable是一个可以完成我想要的操作的接口(interface),但是针对的是字符,而不是字节。

java.nio.WritableByteChannel是我想要的,我可能会使用它,但它只接受 ByteBuffers 作为输入,而不接受 byte[] 数组。

还有其他建议吗? (p.s.“输入-输出”是 I/O 问题的最佳标签吗?)

最佳答案

java.io.DataOutput 可能适合您,尽管它的方法比您要求的要多得多。

关于java - 接口(interface)寻找诸如 Appendable 或 OutputStream 之类的东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1165835/

相关文章:

Java IO 与 While 和 If 语句

c++ - 与阅读不同格式的数字字符有关的问题

java - NoClassDefFound错误: com/badlogic/gdx/LifecycleListener

object - Golang - 通过接口(interface)通过 2 步解码/重建对象

java - 需要澄清在类中实现接口(interface)方法

objective-c - 禁用重复按钮点击的缓冲

C++ - 使用 io 重定向输入和输出多个整数

java - 解析字符串以提取 XML

java - 为什么函数会在循环中被多次调用?

java - 通过java代码执行jar cvf命令(使用Runtime.exec()方法)