流的类型
-
字节流
InputStream
OutputStream
-
字符流
Reader
Writer
流的分类
-
节点流
从特定地方读写的流类
例:磁盘或一块内存区域
设备打交道
-
过滤流
使用节点流作为输入或输出。
过滤流是使用一个已经存在的输入流或输出流连接创建的。
过滤流就是对已经存在的流进行包装
I/O库的设计原则
Java的I/O库提供一个称为链接的机制,可以将一个流于另一个流首尾相接,形成一个流管道的链接。
这种机制使用了Decorator&Wrapper 装饰器的设计模式。
(在不创造更多的子类的情况, 增加类的功能)
通过流的的链接可以动态的增加一些功能,而这种功能的增加是通过组合一些流的基本功能而动态获取的