serialVersionUID

2018-02-10  本文已影响0人  lqsss

什么是serialVersionUID

serialVersionUID表示:“串行化版本统一标识符”(serial version universal identifier),简称UID
serialVersionUID必须定义成下面这种形式:static final long serialVersionUID = xxxL;

为什么要serialVersionUID

序列化时为了保持版本的兼容性,即在版本升级时反序列化仍保持对象的唯一性。

  1. 不一致的serialVersionUID,是无法序列化/反序列化
  2. 如果未显示设置serialVersionUID值,假设修改类的某个field,新生成的
    serialVersionUID 与即将要反序列化的serialVersionUID 不一致,导致失败
  3. 设置一样的serialVersionUID ,可以让新版本的与老版本兼容,完成序列化,只不过发生改动的属性会变成null
上一篇 下一篇

猜你喜欢

热点阅读