对于程序而言,其使用字节流来操作 输出/输入 8位 的字节数据; 对于 java中所有的字节流操作实际都是基于 Input/OutputStream
直接实现 :
文件:java.io.FileInput/OutputStream
数组:java.io.ByteArrayInput/OutputStream
装饰器(decorate)模式实现
缓冲:BufferedInput/OutputStream:提供了byte数组作为缓冲(buffer)
数据:DataInput/OutputStream
过滤器:FilterInput/OutputStream : 对于 当前的Filter其具体表现并不是提供了数据过滤的功能,而是为了支持拓展Input/OutputStream,通过继承重写所有的方法,对于继承FilterInput/OutputStream的子类可以有选择的来重写Stream中的方法
对象:ObjectInput/OutputStream : 可以通过当前类来实现 序列化和反序列化,实现java对象的深层拷贝
管道:PipedInput/OutputStream : 其表现形式更加类似于 网络连接或阻塞式Channel