任何程序都有io部分,io是对程序来说数据流的输入和输出。这里说的流,是指有字节组成的列,不断输入程序,或者从程序中输出,我们形象称为流。Java的io流有两种,一种叫字节流,最原始的;一种叫字符流。
字节流
输入字节流,在jdk api中,他的继承关系如下图:
InputStream为输入流的接口类,下面是各种具体输入流的实现类,其他输入流中关键地方是调用native方法的,其实现是通过jni调用系统接口来使用系统硬件资源。
FileInputStream 文件输入流
ObjectInputStream 对象输入流
PipedInputStream 管道输入流
ByteArrayInputStream 字节数组输入流
SequenceInputStream 连接两个输入流,合并成一个输入流
StringBufferInputStream 字符串输入流
输出流,在jdk api中,他的继承关系如下图:
OutputStream 输出流的接口类,下面是输出流的各个具体实现类。
字符流
输入字符流,在jdk api中,他的继承如下图:
输出字符流,在jdk api中,他的继承如下图: