21xrx.com
2025-07-06 06:40:18 Sunday
文章检索 我的文章 写文章
Java序列化:如何使用Serializable接口
2023-06-14 20:54:37 深夜i     17     0
Java Serializable接口 序列化

通过实现Java的Serializable接口,我可以将对象转换成字节流并在网络上进行传输或者存储在本地。这个过程也被称为“序列化”。在Java中,所有实现了序列化接口的类都可以通过序列化机制进行传输和存储。

下面是一个使用Serializable接口的例子:

import java.io.*;
public class MyClass implements Serializable {
  private String name;
  private int age;
  
  public void setName(String name)
    this.name = name;
  
  
  public void setAge(int age)
    this.age = age;
  
  
  public String getName()
    return name;
  
  
  public int getAge()
    return age;
  
}
public class SerializationExample {
  public static void main(String[] args) {
    MyClass obj = new MyClass();
    obj.setName("Jack");
    obj.setAge(30);
    
    try {
      FileOutputStream fos = new FileOutputStream("file.txt");
      ObjectOutputStream oos = new ObjectOutputStream(fos);
      oos.writeObject(obj);
      oos.close();
    } catch (IOException e) {
      e.printStackTrace();
    }
    
    try {
      FileInputStream fis = new FileInputStream("file.txt");
      ObjectInputStream ois = new ObjectInputStream(fis);
      MyClass newObj = (MyClass) ois.readObject();
      ois.close();
      System.out.println("Name: " + newObj.getName());
      System.out.println("Age: " + newObj.getAge());
    } catch (IOException | ClassNotFoundException e) {
      e.printStackTrace();
    }
  }
}

在上面的代码中,我创建了一个MyClass类,并实现了Serializable接口。然后,我创建了一个MyClass对象,将其写入到文件“file.txt”中。接着,我再次读取这个对象,并打印出它的name和age属性。

  
  

评论区