可序列化对象为什么要定义 serialversionUID 值?
答:
SerialVersionUid,简言之,其目的是序列化对象版本控制,有关各版本反序列化时是否兼容。如果在新版本中这个值修改了,新版本就不兼容旧 版本,反序列化时会抛出 InvalidClassException 异常。如果修改较小,比 如仅仅是增加了一个属性,我们希望向下兼容,老版本的数据都能保留,那 就不用修改;如果我们删除了一个属性,或者更改了类的继承关系,必然不 兼容旧数据,这时就应该手动更新版本号,即SerialVersionUid。
可序列化对象为什么要定义 serialversionUID 值?
最新推荐文章于 2022-10-17 23:52:42 发布