IO流Part3_节点流和处理流概述
目录
节点流
| 分类 | 字节输入流 | 字节输出流 | 字符输入流 | 字符输出流 |
|---|
| 抽象基类 | InputStream | OutputStream | Reader | Writer |
| 访问文件 | FileInputStream | FileOutputStream | FileReader | FileWriter |
| 访问数组 | ByteArrayInputStream | ByteArrayOutputStream | CharArrayReader | CharArrayWriter |
| 访问管道 | PipedInputStream | PipedOutputStream | PipedReader | PipedWriter |
| 访问字符串 | | | StringReader | StringWriter |





处理流
| 分类 | 字节输入流 | 字节输出流 | 字符输入流 | 字符输出流 |
|---|
| 抽象基类 | InputStream | OutputStream | Reader | Writer |
| 对象流 | ObjectInputStream | ObjectOutputStream | | |
| 文件流 | FileInputStream | FileOutputStream | | |
| 转换流 | | | InputStreamReader | OutputStreamWriter |
| 打印流 | | PrintStream | | PrintWriter |
| (父)FilterInputStream | (父)FilterOutputStream | (父)FilterReader | FilterWriter |
| 推回输入流 | (子)PushbackInputStream | | (子)PushbackReader | |
| 特殊流 | (子)DataInputStream | (子)DataOutputStream | | |
| 缓冲流 | (子)BufferedInputStream | (子)BufferedOutputStream | BufferedReader | BufferedWriter |





节点流和处理流的区别和联系
- 节点流是底层流/低级流,直接跟数据源相关。
- 处理流既可以消除不同节点流的实现差异,也可以提供更方便的方法来完成输入输出。
- 处理流也叫包装流,它可以对节点流进行包装。使用了修饰器设计模式,不会直接与数据源相连。