📌  相关文章
📜  Java中的 ObjectInputStream read() 方法及示例(1)

📅  最后修改于: 2023-12-03 14:42:50.481000             🧑  作者: Mango

Java中的 ObjectInputStream read() 方法及示例

简介

ObjectInputStream类是Java中的对象输入流类,通常与ObjectOutputStream结合使用,用于对Java中的对象进行序列化和反序列化。read()方法是ObjectInputStream类中的一个核心方法,用于从输入流中读取一个Java对象。

语法
public Object read() throws IOException, ClassNotFoundException
参数

该方法没有参数。

返回值

读取的Java对象。

示例

下面是一个使用ObjectInputStream类和read()方法的示例:

import java.io.*;

public class ReadObject {

    public static void main(String[] args) {
        try {
            FileInputStream fileInput = new FileInputStream("user.ser");
            ObjectInputStream objectInput = new ObjectInputStream(fileInput);

            User newUser = (User) objectInput.read();

            System.out.println(newUser);

            objectInput.close();
            fileInput.close();
        } catch(IOException e) {
            e.printStackTrace();
        } catch(ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}

在上述示例中,我们使用FileInputStream类和ObjectInputStream类读取一个保存在文件中的对象,并将其转换为User类的实例对象。最后,我们将该对象输出到控制台上,并关闭文件和对象输入流。

注意: 由于方法read()会抛出ClassNotFoundException异常,因此我们需要在方法的声明中添加throws语句来捕获该异常。

小结

read()方法是ObjectInputStream类中的一个非常重要的方法,它使得我们能够在Java中对对象进行序列化和反序列化操作。通过本篇文章,我们不仅学习了read()方法的语法、参数以及返回值,还通过一个示例代码了解了该方法的具体使用方式。