java 序列化的说明

来源:互联网 发布:2017淘宝联盟pid获取 编辑:程序博客网 时间:2024/06/08 05:19
  • 当父类继承Serializable接口,所有子类都可以被序列化
  • 子类实现了Serializable接口,父类没有,父类中的属性不能序列化(不报错,数据会丢失),但是子类中属性人能正确序列化
  • 如果序列化的属性是对象,这个对象也必须实现Serializable接口,否则会报错
  • 在反序列化时,如果对象的属性有修改或删减,修改的部分属性会丢失,但不会报错
  • 在反序列化时,如果serialVersionUID被修改,那么反序列化时会失败
  • 如果一个父类没有实现Serializable接口,他的内部类如果不是static的,即使实现了序列化接口,也会序列失败。因为非静态内部类会保存一个指向父类的类型this变量,而序列化类的所有属性必须实现序列化接口,所以要将内部类设置成静态类
  • List或者Map容器中包含的泛型类型也必须实现Serializable接口,否则也会报java.io.NotSerializableException
原创粉丝点击