您好我在Java中有一个关于SerialVersionUID
的问题。
如果我为SerialVersionUID
生成class A
,
A
的2个实例具有相同的SerialVersion
类和对象的另一个唯一序列,不同的是object1
和object2
?或者怎么样?
我不明白,请回复我。感谢。
答案 0 :(得分:1)
SerialVersionUID是识别类版本的方法。因此,同一类的所有对象都将具有相同的SerialVersionUID。 但是,如果对类进行更改,建议更改SerialVersionUID。然后在不兼容的情况下,对象的序列化将失败。
答案 1 :(得分:0)
serialVersionUID用于对象的版本控制。
如果我们没有在类中定义serialVersionUID,那么任何 修改是在课堂上进行的,那么我们将无法进行deSerialize 我们的类是因为java编译器生成的serialVersionUID 修改后的类将与旧的序列化对象不同 反序列化过程最终会抛出 java.io.InvalidClassException
serialVersionUID object1和object2?
它将是相同的,因为串行版本uid是静态的(即类级别)