`

Java IO流总结

    博客分类:
  • Java
 
阅读更多

概念

:字节序列的抽象概念。

节点流类:用于直接操作目标设备所对应的流类。

流节点:节点流类所对应的IO源或目标。

 

输入流:程序可以从中读取数据的流。

输出流:程序能向其中写入数据的流。

字节流:以字节为单位传输数据的流。

字符流:以字符为单位传输数据的流。

节点流:用于直接操作目标设备的流,直接从一个源读写数据的流(没有经过包装和修饰)。

过滤流/处理流:是对一个已存在的流的链接和封装,通过对数据进行处理为程序提供功能强大、灵活的读写功能。

 

归纳

流的分类

按流向分:输入流、输出流

按数据传输单位分:字节流、字符流

按操作对象分:文件流、网络流、内存流、磁带流等

按功能分:节点流、过滤流/处理流

按是否装饰分:原始流、装饰流

 

JDK中,流类被直观地从流向和传输单位两个维度进行了粗略划分。

 

类层次结构

 

 

对比

 

流 vs 文件

文件是数据的静态存储形式,而流是指数据传输时的形态。文件只是流的操作对象之一。

 

节点流、原始流、过滤流/处理流、装饰流

节点流和原始流从概念上来说是一致的,都强调是未经过装饰的流。

它们与过滤流、处理流、装饰流对立,后者强调流是在前者的基础上进行了装饰,增强了功能的流。

 

附录

流的理解

之所以称为流,是因为这个数据序列在不同时刻所操作的是源的不同部分。

节点流:可理解为节点流量,节点流量表示一个节点上总体流量,节点流量跟方向无关,只要通过节点的单位量的集合就是节点流量。

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics