JAVA序列化(二) 自定义序列化
简介:
在某些情况下,可能需要改变Serializable类的默认序列化过程,或者需要对一个没有实现Serializable的属性进行序列化,此时就需要自定义序列化流程。
?
实现:
1)目标类实现Serializable,上述两种情况中的属性设为transient,通过增加下列两个方法来自定义该属性的序列化过程
private void writeObject(java.io.ObjectOutputStream out)? throws IOException;
private void readObject(java.io.ObjectInputStream in) throws IOException,ClassNotFoundException;
?
实例
???Student.java
Student[id=1,stuNo=001,name=siyuan,teacher=Teacher[id=101,teachNo=101,name=carro]]Serialized begin...writeExternal ... Serialized end...Deserialized begin...readExternal ... Deserialized end...Student[id=1,stuNo=001,name=siyuan,teacher=Teacher[id=101,teachNo=101,name=carro]]?
?
参考资料:
http://www.javapractices.com/home/HomeAction.do