serialVersionUID 称为序列化版本号,这个多用于实现了Serializable的类中,适用场景是类的序列化,当我们没有定义这个值得时候虚拟机会根据类的属性生成一个独一无二的序列化版本号。
在反序列化时,虚拟机会根据该变量值去寻找,如果找的到该值反序列化成功,找不到该值反序列化失败。
但是这样有一个劣势,类一旦序列化后我们就不能再修改该类的属性,一旦修改,序列化ID会变化,这会导致后续的反序列化失败。
如果我们手动定义一个序列化ID的话,虚拟机就不会进行计算了。
private static final long serialVersionUID = 1L 是什么意思
最新推荐文章于 2023-11-17 14:21:57 发布