Java

java中序列化Serializable怎么实现

小亿
93
2023-09-14 19:12:31
栏目: 编程语言

要实现Java中的对象序列化,需要按照以下步骤进行:

  1. 在需要进行序列化的类上实现Serializable接口。Serializable接口是一个标记接口,不包含任何方法,只是用来标记该类可以被序列化。
public class MyClass implements Serializable {
// 类的内容
}
  1. 创建一个ObjectOutputStream对象来将对象序列化为字节流。
MyClass obj = new MyClass();
try {
FileOutputStream fileOut = new FileOutputStream("obj.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
out.writeObject(obj);
out.close();
fileOut.close();
} catch (IOException i) {
i.printStackTrace();
}
  1. 创建一个ObjectInputStream对象来从字节流中反序列化对象。
MyClass obj = null;
try {
FileInputStream fileIn = new FileInputStream("obj.ser");
ObjectInputStream in = new ObjectInputStream(fileIn);
obj = (MyClass) in.readObject();
in.close();
fileIn.close();
} catch (IOException i) {
i.printStackTrace();
} catch (ClassNotFoundException c) {
c.printStackTrace();
}

以上就是实现Java中序列化的基本步骤。需要注意的是,被序列化的类的成员变量也必须是可序列化的,否则会抛出NotSerializableException异常。如果某个成员变量不希望被序列化,可以使用transient关键字标记。

0
看了该问题的人还看了