Java的IO流的设计应用了设计模式中的装饰模式。IO包括字节流和字符流,
字节流:一次读入或读出是8位二进制。
字符流:一次读入或读出是16位二进制。
字节流和字符流的原理是相同的,只不过处理的单位不同而已。后缀是Stream是字节流,而后缀是Reader,Writer是字符流。
Java标准库的继承关系和对应装饰模式的的类,如下图: 图中: 1、InputStream和OutputStream是字节流的两个基类,他们扮演着装饰模式中的抽象构件的角色, 2、FileInputStream、StringBufferInputStream、ByteArrayInputStream和PipedInputStream是InputStream的子类,扮演着装饰模式中的具体构件的角色, 3、FilterInputStream、ObjectInputStream和SequenceInputStream也是InputStream的子类,扮演着装饰模式中的抽象装饰的角色, 4、BufferedInputStream、DataInputStream和PushbakInputStream是FilterInputStream的子类,扮演着装饰模式中的具体装饰的角色。输出流OutputStream的设计和InutStream是一样的。
Java IO流学习
最新推荐文章于 2022-04-12 14:56:56 发布