1.什么是流?
在Java中,通过不同输入输出设备(键盘,内存,显示器,网络等)之间的数据传输抽象表述为“流”,程序允许通过流的方式与输入输出设备进行数据传输。Java中的“流”都位于java.io包中,称为IO流。
听起来是不是很抽象???那就举个简单小例子来简化一下吧!春节就要快到了,家里有池潭并养鱼的小伙伴们是不是马上就要干潭放水捞鱼啊,那怎么干潭放水呢?不可能几个人拿块水瓢往池潭外泼水吧?这时候就要借助抽水机来帮忙了,将抽水机搭建好并通电,然后抽水机就DalaDala的工作了起来,将池潭的水通过水管hualahuala的往外抽。
而Java中或是其他语言中,数据输入输出的概念就像池潭抽水一样,池潭为数据源,要将池潭的数据放出去,那就要通过水管这一道具了,而在水管中,数据像水一样流动,然后就叫(数据)流了。
池潭(Source) --> 水管(流)--> 池潭外(Program)
2.流的分类
IO流分为字节流,字符流
字节流又分为字节输入流,字节输出流
字符流又分为字符输入流,字符输出流
3.那什么是输入输出流呢?
1 输入输出流其实是相对的。
2 将外界(网络,文件)中的数据读取到程序中是为输入
3 将程序中的数据写入到外界(文件,网络)中是为输出
4.字节输入输出流
5.字符输入输出流
可参考博客