理解Java的IO流

一、什么是"流"

在Java中把不同的输入/输出源(键盘、文件、网络连接等)抽象描述为"流"。


二、流的分类

1、根据流的流向进行分类

输入流、输出流

输入流以 InputStream 与 Reader 为基类;输出流以 OutputStream 与 Writer 为基类

2、根据操作数据单元进行分类

字节流、字符流

字节流和字符流的用法几乎完全一样,区别在于它们所操作的数据单元不同,字节流操作的数据单元是一个字节,而字符流操作的是一个字符

字节流以 InputStream 与 OutputStream 为基类;字符流以 Reader与 Writer 为基类

3、根据流的角色进行分类

节点流和处理流

节点流:可以从/向一个特定的IO设备读/写数据的流,称为节点流。

处理流:对一个已存在的流进行连接或封装

使用处理流的好处:

【1】性能提高了:主要以增加缓冲的方式来提高输入/输出的效率

【2】操作的便捷:处理流可能提供一系列便捷的方法来一次输入/输出大批量的内容。

通过使用处理流,Java程序无需理会输出/输入节点是磁盘、网络还是其他设备,程序只要将这些节点流包装成处理流,就可以使用相同的输入/输出代码来读写不同的输入/输出设备的数据。

猜你喜欢

转载自blog.csdn.net/weixin_41575259/article/details/81989357
今日推荐