Java对象序列化与反序列化的实践案例

原创 忘是亡心i 2024-11-28 01:06 130阅读 0赞

在Java中,对象的序列化和反序列化是通过ObjectOutputStream和ObjectInputStream这两个类实现的。

以下是一个简单的实践案例:

  1. 创建一个要序列化的对象:
    ```java
    import java.io.Serializable;

class Person implements Serializable {
private String name;
private int age;

  1. // getters and setters

}

Person person = new Person();
person.setName(“John Doe”);
person.setAge(30);

// 此处保存person对象到文件(例如:person.ser)进行序列化

  1. 2. 对已序列化的对象进行反序列化:
  2. ```java
  3. import java.io.FileInputStream;
  4. import java.io.ObjectInputStream;
  5. try {
  6. // 从文件中读取已序列化的对象
  7. FileInputStream fis = new FileInputStream("person.ser");
  8. ObjectInputStream ois = new ObjectInputStream(fis);
  9. // 将反序列化的对象赋值给Person类的实例
  10. Person personDeserialized = (Person) ois.readObject();
  11. // 打印反序列化后的对象信息
  12. System.out.println("Deserialized Person:");
  13. System.out.println(personDeserialized.getName() + " - " + personDeserialized.getAge()));
  14. } catch (Exception e) {
  15. e.printStackTrace();
  16. }

这个案例中,我们创建了一个Person类的对象,并对其进行序列化保存到文件。然后,我们在另一个地方用ObjectInputStream反序列化这个对象并打印信息。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,130人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java对象序列序列错误案例

    Java对象序列化和反序列化是将对象状态转换为可以存储或传输的格式(序列化),以及将这种格式转换回对象状态(反序列化)的过程。在实际应用中,可能会遇到各种错误,以下是一些常见的