流的定义

流是一组有序的数据序列,根据操作的类型,可以分为输入流和输出流。流是个抽象的概念,是对输入输出设备的抽象,Java程序中,对于数据的输入/输出操作都是以“流”的方式进行。设备可以是文件,网络,内存等。流提供了一条通道程序,可以使用这条通道把源中的字节序列送到目的地。当程序需要从某个数据源读入数据的时候,就会开启一个输入流,数据源可以是文件、内存或网络等等。相反地,需要写出数据到某个数据源目的地的时候,也会开启一个输出流,这个数据源目的地也可以是文件、内存或网络等等。

image.png输入流

输入流是指数据从程序之外(如:数据库、文件、网络…)输入到程序的过程,它分为字节输入流(InputStream类)和字符输入流(Reader类),上述的两个类都是抽象类,下面有它们的一些子类的介绍。
image.png
image.png

image.png输出流

输出流指的是数据从程序中流向程序之外(如:数据库、文件…)的过程,它也分为字节输出流(OutputStream类)和字符输出流(Writer类)。
image.png
image.png
image.png