java中io流面试题有哪些

这篇文章主要介绍了java中io流面试题有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

Java可以用来干什么

Java主要应用于:1. web开发;2. Android开发;3. 客户端开发;4. 网页开发;5. 企业级应用开发;6. Java大数据开发;7.游戏开发等。

1.什么是IO流

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

2.java中有几种类型的流

字符流和字节流。字节流继承inputStream和OutputStream,字符流继承自InputSteamReader和OutputStreamWriter。

3.字节流如何转为字符流

字节输入流转字符输入流通过 InputStreamReader 实现,该类的构造函数可以传入 InputStream 对象。

字节输出流转字符输出流通过 OutputStreamWriter 实现,该类的构造函数可以传入 OutputStream 对象。

4.字节流与字符流的区别

以字节为单位输入输出数据,字节流按照8位传输

以字符为单位输入输出数据,字符流按照16位传输

5.谈谈Java IO里面的常见类,字节流,字符流、接口、实现类、方法阻塞

答:输入流就是从外部文件输入到内存,输出流主要是从内存输出到文件。

IO里面常见的类,第一印象就只知道IO流中有很多类,IO流主要分为字符流和字节流。字符流中有抽象类InputStream和OutputStream,它们的子类FileInputStream,FileOutputStream,BufferedOutputStream等。字符流BufferedReader和Writer等。都实现了Closeable, Flushable, Appendable这些接口。程序中的输入输出都是以流的形式保存的,流中保存的实际上全都是字节文件。

java中的阻塞式方法是指在程序调用改方法时,必须等待输入数据可用或者检测到输入结束或者抛出异常,否则程序会一直停留在该语句上,不会执行下面的语句。比如read)和readLine)方法。

6.简述File类的基本功能

处理文件和获取文件信息,文件或文件夹的管理

除了读写文件内容其他的都可以做

7.什么是 java 序列化,如何实现 java 序列化?

序列化就是一种用来处理对象流的机制,所谓对象流也就是将对象的内容进行流化。可以对流化后的对象进行读写操作,也可将流化后的对象传输于网络之间。序列化是为了解决在对对象流进行读写操作时所引发的问题。序 列 化 的 实 现 : 将 需 要 被 序 列 化 的 类 实 现 Serializable 接 口 , 该 接 口 没 有 需 要 实 现 的 方 法 , implements Serializable 只是为了标注该对象是可被序列化的,然后使用一个输出流如:FileOutputStream)来构造一个 ObjectOutputStream对象流)对象,接着,使用 ObjectOutputStream 对象的 writeObjectObject obj)方法就可以将参数为 obj 的对象写出即保存其状态),要恢复的话则用输入流。

8.FileInputStream和FileOutputStream是什么

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

实例:

public class InputAndOutputBuffering
{
  public static void mainString args[]) throws IOException
  {                     
 
    FileInputStream fistream = new FileInputStream"pqr.txt");     BufferedInputStream bistream = new BufferedInputStreamfistream); 
 
    FileOutputStream fostream = new FileOutputStream"xyz.txt"); 
    BufferedOutputStream bostream = new BufferedOutputStreamfostream);  
 
    int temp;
    while  temp = bistream.read) ) != -1 )
    {
      bostream.writetemp);     
      System.out.printchar) temp);    
    }
    bostream.close);  fostream.close);
    bistream.close);   fistream.close);
  }
}

Published by

风君子

独自遨游何稽首 揭天掀地慰生平

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注