實現對象的存儲和讀取可以通過Java的序列化和反序列化來實現。下面是實現對象存儲和讀取的基本步驟:
Serializable
接口。這個接口是一個標記接口,表示該類可以被序列化。import java.io.Serializable;
public class MyClass implements Serializable {
// 類的成員和方法
// ...
}
// 創建對象
MyClass obj = new MyClass();
// 序列化對象到文件
try {
FileOutputStream fileOut = new FileOutputStream("object.ser");
ObjectOutputStream out = new ObjectOutputStream(fileOut);
out.writeObject(obj);
out.close();
fileOut.close();
System.out.println("對象已存儲到文件中");
} catch (IOException e) {
e.printStackTrace();
}
// 從文件中讀取對象
try {
FileInputStream fileIn = new FileInputStream("object.ser");
ObjectInputStream in = new ObjectInputStream(fileIn);
MyClass obj = (MyClass) in.readObject();
in.close();
fileIn.close();
System.out.println("對象已從文件中讀取");
} catch (IOException e) {
e.printStackTrace();
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
在上述代碼中,MyClass
對象會被序列化到名為object.ser
的文件中。然后,通過反序列化從該文件中讀取并重新創建對象。請注意,要使一個類可以被序列化,它必須實現Serializable
接口,并且所有非序列化的成員必須標記為transient
。