参考文档:
https://www.runoob.com/java/java-serialization.html

参考视频:
https://www.bilibili.com/video/BV1D7411i7mT?p=344
https://www.bilibili.com/video/BV1D7411i7mT?p=345
https://www.bilibili.com/video/BV1D7411i7mT?p=346

序列化的两种方式

  • 实现Serializable接口
  • 实现Externalizable接口

Serializable接口

  • 序列化版本ID:serialVersionUID

不声明,类重新编译后,原来的对象会无法反序列化

  • 哪些属性不序列化:static和transient

transient: 临时变量,在需要序列化的属性前修饰
static: 静态变量,属于全局共享,序列化只序列化对象的属性,不是类的属性

Externalizable接口


由开发者指定序列化、反序列话的属性,static、transient修饰的也可以序列化
image.png