Java序列化与反序列化的实战案例

原创 一时失言乱红尘 2024-12-11 15:18 65阅读 0赞

在Java中,序列化和反序列化是一种将对象状态保存并恢复的过程。下面我会提供一个简单的序列化和反序列化的实战案例。

案例:Person对象的序列化和反序列化

首先,定义一个Person类:

  1. public class Person {
  2. private String name;
  3. private int age;
  4. // getters and setters
  5. }

然后进行序列化(保存状态):

  1. // 创建Person对象
  2. Person person = new Person();
  3. person.setName("John Doe");
  4. person.setAge(30);
  5. // 序列化,将对象转换为字节流
  6. try {
  7. byte[] bytes = ObjectOutputStream.writeObject(person);
  8. // 存储这些字节(通常在文件或数据库中)
  9. } catch (IOException e) {
  10. e.printStackTrace();
  11. }

接下来进行反序列化(恢复状态):

  1. // 从存储的字节流中恢复Person对象
  2. try {
  3. Person personFromBytes = (Person) ObjectInputStream.readObject(bytes);
  4. // 打印恢复的对象,确保数据正确
  5. System.out.println(personFromBytes);
  6. } catch (IOException | ClassNotFoundException e) {
  7. e.printStackTrace();
  8. }

总结:这个例子展示了如何使用Java的序列化和反序列化功能来保存和恢复对象状态。

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

发表评论

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

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

相关阅读