1、平时我们自己写的类要想实现序列化,实现Serializable接口即可。那么Serializable接口是如何实现对象的序列化呢?
简单的说,Serializable就是一个标志,对象的类型是String,array,Enum或者Serializable就可以被序列化,因此Serializable可以说是一个序列化的标志。
2、序列化针对的是对象,所以static修饰的类变量无法被序列化。另外transient修饰符会阻止修饰的临时变量被序列化。
3、serialVersionUID注意一般不要修改。JAVA序列化的机制是通过判断类的serialVersionUID来验证版本是否一致的。在进行反序列化时,JVM会把传来的字节流中的serialVersionUID和本地相应实体类的serialVersionUID进行比较,如果相同,反序列化成功,如果不相同,就抛出InvalidClassException异常。
原文链接:Java程序员必备:序列化全方位解析