在 Java 中,输入输出流的继承关系主要围绕两个抽象基类展开:字节流基类 InputStream
和 OutputStream
,以及字符流基类 Reader
和 Writer
。这些类形成了 Java I/O 系统的基础,提供了丰富的子类以适应不同的输入输出需求。
字节流
字节流用于处理原始的二进制数据。
InputStream
InputStream
是所有字节输入流的超类。
- 子类:
FileInputStream
: 从文件中读取字节。ByteArrayInputStream
: 从字节数组中读取字节。FilterInputStream
: 这是所有过滤输入流的超类,以下是常见的子类:BufferedInputStream
: 提供缓冲功能,提高读取效率。DataInputStream
: 允许应用程序以机器无关的方式从底层输入流读取基本 Java 数据类型。PushbackInputStream
: 提供了一个单字节的回退功能。
OutputStream
OutputStream
是所有字节输出流的超类。
- 子类:
FileOutputStream
: 将字节写入文件。ByteArrayOutputStream
: 将字节写入字节数组。FilterOutp