高级Java工程师必备 ----- 深入分析 Java IO (三)

Java IO即Java 输入输出系统。不管我们编写何种应用,都难免和各种输入输出相关的媒介打交道,其实和媒介进行IO的过程是十分复杂的,这要考虑的因素特别多,比如我们要考虑和哪种媒介进行IO(文件、控制台、网络),我们还要考虑具体和它们的通信方式(顺序、随机、二进制、按字符、按字、按行等等)。Java类库的设计者通过设计大量的类来攻克这些难题,这些类就位于java.io包中。

在JDK1.4之后,为了提高Java IO的效率,Java又提供了一套新的IO,Java New IO简称Java NIO。它在标准java代码中提供了高速的面向块的IO操作。本篇文章重点介绍Java IO,关于Java NIO请参考我的另两篇文章: 

高级Java工程师必备 ----- 深入分析 Java IO (一)BIO

高级Java工程师必备 ----- 深入分析 Java IO (二)NIO

Java IO类库的框架

首先看个图:

高级Java工程师必备 ----- 深入分析 Java IO (三)

 Java IO的类型

虽然java IO类库庞大,但总体来说其框架还是很清楚的。从是读媒介还是写媒介的维度看,Java IO可以分为:

输入流:InputStream和Reader

输出流:OutputStream和Writer

而从其处理流的类型的维度上看,Java IO又可以分为:

字节流:InputStream和OutputStream

字符流:Reader和Writer

下面这幅图就清晰的描述了JavaIO的分类:

- 字节流 字符流
输入流   InputStream   Reader  
输出流   OutputStream   Writer  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpjgyy.html