千家信息网

Java IO常见面试题有哪些

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要为大家展示了"Java IO常见面试题有哪些",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Java IO常见面试题有哪些"这篇文章吧。1. 什
千家信息网最后更新 2026年11月01日Java IO常见面试题有哪些

这篇文章主要为大家展示了"Java IO常见面试题有哪些",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"Java IO常见面试题有哪些"这篇文章吧。

1. 什么是IO流?


它是一种数据的流从源头流到目的地。比如文件拷贝,输入流和输出流都包括了。输入流从文件中读取数据存储到进程(process)中,输出流从进程中读取数据然后写入到目标文件。

2. 字节流和字符流的区别。


字节流在JDK1.0中就被引进了,用于操作包含ASCII字符的文件。JAVA也支持其他的字符如Unicode,为了读取包含Unicode字符的文件,JAVA语言设计者在JDK1.1中引入了字符流。ASCII作为Unicode的子集,对于英语字符的文件,可以可以使用字节流也可以使用字符流。

3.Java中流类的超类主要由那些?

java.io.InputStream

java.io.OutputStream

java.io.Reader

java.io.Writer

4. FileInputStream和FileOutputStream是什么?


这是在拷贝文件操作的时候,经常用到的两个类。在处理小文件的时候,它们性能表现还不错,在大文件的时候,最好使用BufferedInputStream (或 BufferedReader) 和 BufferedOutputStream (或 BufferedWriter)

5. 字节流和字符流,你更喜欢使用拿一个?


个人来说,更喜欢使用字符流,因为他们更新一些。许多在字符流中存在的特性,字节流中不存在。比如使用BufferedReader而不是BufferedInputStreams或DataInputStream,使用newLine()方法来读取下一行,但是在字节流中我们需要做额外的操作。

6.System.out.println()是什么?


println是PrintStream的一个方法。out是一个静态PrintStream类型的成员变量,System是一个java.lang包中的类,用于和底层的操作系统进行交互。

7.什么是Filter流?


Filter Stream是一种IO流主要作用是用来对存在的流增加一些额外的功能,像给目标文件增加源文件中不存在的行数,或者增加拷贝的性能。

8. 有哪些可用的Filter流?
在java.io包中主要由4个可用的filter Stream。两个字节filter stream,两个字符filter stream. 分别是FilterInputStream, FilterOutputStream, FilterReader and FilterWriter.这些类是抽象类,不能被实例化的。

有些Filter流的子类:

LineNumberInputStream 给目标文件增加行号

DataInputStream 有些特殊的方法如readInt(), readDouble()和readLine() 等可以读取一个 int, double和一个string一次性的,

BufferedInputStream 增加性能

PushbackInputStream 推送要求的字节到系统中

9.SequenceInputStream的作用?
这个类的作用是将多个输入流合并成一个输入流,通过SequenceInputStream类包装后形成新的一个总的输入流。在拷贝多个文件到一个目标文件的时候是非常有用的。可用使用很少的代码实现

10.说说PrintStream和PrintWriter


他们两个的功能相同,但是属于不同的分类。字节流和字符流。他们都有println()方法。

11. 在文件拷贝的时候,那一种流可用提升更多的性能?
在字节流的时候,使用BufferedInputStream和BufferedOutputStream。
在字符流的时候,使用BufferedReader 和 BufferedWriter

12 .说说管道流(Piped Stream)


有四种管道流, PipedInputStream, PipedOutputStream, PipedReader 和 PipedWriter.在多个线程或进程中传递数据的时候管道流非常有用。

13.说说File类
它不属于 IO流,也不是用于文件操作的,它主要用于知道一个文件的属性,读写权限,大小等信息。注意:Java7中文件IO发生了很大的变化,专门引入了很多新的类来取代原来的基于java.io.File的文件IO操作方式。详情阅读下面的文章:

Java NIO之拥抱Path和Files

14. 说说RandomAccessFile?


它在java.io包中是一个特殊的类,既不是输入流也不是输出流,它两者都可以做到。他是Object的直接子类。通常来说,一个流只有一个功能,要么读,要么写。但是RandomAccessFile既可以读文件,也可以写文件。 DataInputStream 和 DataOutStream有的方法,在RandomAccessFile中都存在。

以上是"Java IO常见面试题有哪些"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

文件 字符 时候 输入 拷贝 方法 两个 性能 数据 目标 试题 作用 内容 功能 多个 管道 篇文章 进程 输出 特殊 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳九邦互联网科技有限公司 山东特亿宝互联网科技有限公司 广州宏创互联网科技 上游互联网科技 互联网科技有限公司 翻译 科技伦理 互联网公司 顺网科技2021年互联网排名 互联网校园科技培训 荆州市昕露互联网络科技有限公司 上海京穆互联网科技有限公司 山东子淼互联网科技有限公司 中国互联网有什么科技 广州富喜互联网络科技 互联网科技年终奖 2021世界互联网领先科技成果发布 广东鹅鹅鹅互联网科技有限公司 兰石爱特工业互联网科技分公司 绵阳真晨互联网科技有限公司 宁波允成互联网科技有限公司 科技美学互联网 艺术 有格互联网科技 互联网核心科技是什么 科技类互联网 关于新基建和互联网科技 唐信互联网科技 国外互联网科技网站 亳州好赞互联网科技有限公司 广州千川互联网科技有限公司 科技互联网行业投资研究 科技和互联网行业的特点
0