Java--IO流原理及流的分类

Java IO原理

I/O是input和output的缩写。I/O是非常使用的技术,用于处理设备之间的数据传输。如读写及网络通讯等。

Java程序中,对于数据的输入输出操作以“流(stream)”的方式进行

java.io包下提供了各种“流”类的接口,用以获取不同种类的数据,并通过标准的方法输入或输出数据

输入input:读取外部数据(磁盘,光盘等存储设备的数据)到程序(内存)中
输出output:将程序(内存)数据输出到磁盘,光盘等存储设备中

流的分类

按操作数据单位不同分为:字节流(8bit),字符流(16bit)
---- 图片,视频…比较适合用字节流,字符流比较适合用在文本上

数据流的流向不同分为:输入流,输出流

流的角色不同分为:节点流,处理流
----在已有的“流”上包上的一层流(处理流)

抽象基类 字节流 字符流
输出流 InputStream Reader
输入流 OutPutStream Writer

Java中IO流共涉及40多个流,实际上非常规范,都是从如上4个抽象基类派生的。
由这四个基类派生出来的子类名称都是以其父类名作为子类名后缀。

在这里插入图片描述

(上面背景为深色的是比较重要的)

抽象基类 节点流(或文件流) 缓冲流(处理流的一种)
InputStream FileInputStream BufferedInputStream
OutputStream FileOutputStream BufferedOutputStream
Reader FileReader BufferedReader
Writer FileWriter BufferedWriter

第二行时作用与文件上的,所以都是节点流。

发布了49 篇原创文章 · 获赞 0 · 访问量 1434

猜你喜欢

转载自blog.csdn.net/qq_43616001/article/details/103995909