序列化问题:Java对象反序列化示例

原创 女爷i 2024-12-02 03:06 154阅读 0赞

在Java中,对象的序列化和反序列化通常通过Object类或者使用一些专门的库来实现。

这里以一个简单的Person类为例,展示反序列化的过程:

  1. 创建一个序列化的对象:
    ```java
    // 假设我们有一个Person类
    class Person {
    String name;
    int age;

    // 构造函数
    public Person(String name, int age) {

    1. this.name = name;
    2. this.age = age;

    }
    }

// 创建一个Person实例
Person person = new Person(“John Doe”, 30);

  1. 2. 将这个对象序列化为字节流:
  2. ```java
  3. ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream("person.ser"));
  4. oos.writeObject(person);
  5. oos.close();
  1. 存储文件(如person.ser)。

  2. 现在需要反序列化这个字节流回原来的Person对象:

  1. ObjectInputStream ois = new ObjectInputStream(new FileInputStream("person.ser")); );
  2. Person restoredPerson = (Person) ois.readObject();
  3. ois.close();
  4. // 检查恢复的Person是否与原始一致
  5. System.out.println(restoredPerson.getName() + " " + restoredPerson.getAge()); // 输出:John Doe 30

以上就是Java对象反序列化的一个简单示例。

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

发表评论

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

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

相关阅读