在Java中,Serializable是一個接口,用于實現對象的序列化和反序列化。要使用Serializable,需要滿足以下步驟:
例如:
public class MyClass implements Serializable {
// 類的成員和方法
// ...
}
例如:
MyClass myObject = new MyClass();
try {
FileOutputStream fileOut = new FileOutputStream("file.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
out.writeObject(myObject);
out.close();
fileOut.close();
System.out.println("對象已序列化");
} catch (IOException e) {
e.printStackTrace();
}
例如:
MyClass myObject = null;
try {
FileInputStream fileIn = new FileInputStream("file.ser");
ObjectInputStream in = new ObjectInputStream(fileIn);
myObject = (MyClass) in.readObject();
in.close();
fileIn.close();
System.out.println("對象已反序列化");
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
需要注意的是,被序列化的類中的所有成員變量都必須是可序列化的,否則會拋出NotSerializableException異常。如果某個成員變量不需要被序列化,可以使用transient關鍵字進行修飾。