Java IO 2 : 理解流
流的分类:
1.输入/输出都是从程序运行所在内存的角度来划分的。
输入流:基类主要是InputStream和Reader 输出流:主要是OutputStream和writer作为基类. 他们都是一些抽象基类,无法直接创建实例。
2.字节流和字符流
所操作的数据单元不同——字节流操作单元8位的字节,字符流操作数据单元16位的字符。
字节流主要由InputStream 和 outputStream作为基类,字符主要由Reader/Writer作为基类
3.节点流和处理流(按角色分类):
java使用处理流包装节点流是一种典型的装饰器设计模式,消除不同节点流的实现差异,提供更方面的方法完成输入/输出功能
流的概念模型:
对于InputStream 和Reader 而言, 它们把输入设备抽象成一个“水管” ,这个水管里面的每个“水滴”依次排列
温故而知新