共計 924 個字符,預計需要花費 3 分鐘才能閱讀完成。
Java 對象序列化可以通過實現 java.io.Serializable
接口來實現。Serializable
接口是一個標記接口,沒有任何需要實現的方法,只是用來告訴 Java虛擬機 ,該類可以被序列化。
要實現 Java 對象的序列化,可以按照以下步驟進行操作:
- 創建一個類,實現
Serializable
接口:
public class MyClass implements Serializable {// 類的成員和方法}
- 創建對象并設置需要序列化的數據:
MyClass obj = new MyClass();
obj.setSomeData("data");
- 創建一個輸出流,并將對象寫入流中進行序列化:
try {FileOutputStream fileOut = new FileOutputStream("file.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
out.writeObject(obj);
out.close();
fileOut.close();
System.out.println("Serialized data is saved in file.ser");
} catch (IOException e) {e.printStackTrace();
}
- 反序列化對象:
try {FileInputStream fileIn = new FileInputStream("file.ser");
ObjectInputStream in = new ObjectInputStream(fileIn);
MyClass obj = (MyClass) in.readObject();
in.close();
fileIn.close();
// 對反序列化后的對象進行操作
} catch (IOException e) {e.printStackTrace();
} catch (ClassNotFoundException e) {e.printStackTrace();
}
請注意,要進行序列化的類及其所有的成員變量都必須是可序列化的。如果類中包含了不能序列化的對象,則需要將這些對象標記為 transient
關鍵字,以避免序列化錯誤。
丸趣 TV 網 – 提供最優質的資源集合!
正文完