Java IO面试题

发布时间 2023-04-02 13:54:07作者: 百里浅暮

Java IO概览

Java IO 流的 40 多个类都是从如下 4 个抽象类基类中派生出来的。

  • InputStream / Reader:所有的输入流的基类,前者是字节输入流,后者是字符输入流。
  • OutputStream / Writer:所有输出流的基类,前者是字节输出流,后者是字符输出流。

InputStream 字节输入流

InputStream用于从源头(通常是文件)读取数据(字节信息)到内存中,java.io.InputStream抽象类是所有字节输入流的父类。

FileInputStream 是一个比较常用的字节输入流对象,可直接指定文件路径,可以直接读取单字节数据,也可以读取至字节数组中。(一般我们是不会直接单独使用 FileInputStream ,通常会配合 BufferedInputStream(字节缓冲输入流)。

DataInputStream 用于读取指定类型数据,不能单独使用,必须结合 FileInputStream 。