Java-IO流

Java-IO流的解析

Posted by Jinliang on May 2, 2017

概念:在Java语言中,输入和输出都被称为抽象的流,流可以看成一组有序的字节集合,即数据在两个设备之间的传输。

流的本质是数据传输,根据处理数据类型的不同,流可以分为两大类: 字节流、字符流

字节流 字节流以字节(8 bit)为单位,包含两个抽象类:InputStream(输入流)和OutputStream(输出流)。

字符流 字符流以字符(16 bit)为单位,根据码表映射字符,一次可以读多个字节,它包含两个抽象类:Reader(输入流)和Writer(输出流)。

区别: 字节流在处理输入输出时不会用到缓存,字符流用到缓存。

IO运用到了装饰者设计模式 好处:可以在运行时动态的给对象添加一些额外的职责,与使用继承的设计方法相比,该方法具有更好的灵活性。