class MyClass implements Serializable { transient int myTransient; //Other variables }
当我还原这个类时,我想初始化 myTransient 手动,否则我只想使用默认序列化。
myTransient
我怎么能注射 init() 方法进入对象还原进程,而不重新写入整个序列化机制 Externalizable 会让我做吗?
init()
Externalizable
实施 readObject()
readObject()
private void readObject(java.io.ObjectInputStream in) throws IOException, ClassNotFoundException { in.defaultReadObject(); myTransient = ...; }
来自javadoc:
私有void readObject(java.io.ObjectInputStream-in) 抛出IOException,ClassNotFoundException;
另见:
Serializable