全网最全的Java岗IO流面试题(含答案)

IO流:

257.下面哪个流类属于面向字符的输入流()选择一项)

全网最全的Java岗IO流面试题(含答案)_第1张图片

258.要从文件”file.dat”文件中读出第10个字节到变量c中,下列哪个正确()(选择一项)

全网最全的Java岗IO流面试题(含答案)_第2张图片

259.新建一个流对象,下面那个选项的代码是错误的?()

全网最全的Java岗IO流面试题(含答案)_第3张图片

260.下面哪个流是面向字符的输入流()

全网最全的Java岗IO流面试题(含答案)_第4张图片

261.Java类库中,将信息写入内存的类是()

全网最全的Java岗IO流面试题(含答案)_第5张图片

262.请写出一段代码,能够完成将字符串写入文件

public class test {
public static void main(String[] args) {
String str = "bjsxt";
writeFile(str);
}
 
public static void writeFile(String str) {
File file = new File("c:/test.txt");
PrintStream ps = null;
try {
OutputStream fos = new FileOutputStream(file);
ps = new PrintStream(fos);
ps.print(str);
} catch (FileNotFoundException e) {
e.printStackTrace();
} finally {
ps.close();
}
}
}

263.下面哪个流类属于面向字符的输入流()

全网最全的Java岗IO流面试题(含答案)_第6张图片

264.Java中如何实现序列化,有什么意义?

答:序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决对象流读写操作时可能引发的问题(如果不进行序列化可能会存在数据乱序的问题)。

要实现序列化,需要让一个类实现Serializable接口,该接口是一个标识性接口,标注该类对象是可被序列化的,然后使用一个输出流来构造一个对象输出流并通过writeObject(Object obj)方法就可以将实现对象写出(即保存其状态);如果需要反序列化则可以用一个输入流建立对象输入流,然后通过readObject方法从流中读取对象。序列化除了能够实现对象的持久化之外,还能够用于对象的深度克隆(参见Java面试题集1-29题)

265.Java 中有几种类型的流?

答:两种流分别是字节流,字符流。

字节流继承于InputStream、OutputStream,字符流继承于Reader、Writer。在java.io 包中还有许多其他的流,主要是为了提高性能和使用方便。

补充:关于Java的IO需要注意的有两点:一是两种对称性(输入和输出的对称性,字节和字符的对称性);二是两种设计模式࿰

你可能感兴趣的:(java,开发语言)