即使在定义显式ID之后也使用隐式SerialVersionID,为什么?

时间:2018-06-01 05:36:44

标签: java serialization serialversionuid

在我的类中,我明确地提供了serialVersionUID,但是在命令提示符中对同一个类使用'serialver'命令时,系统也会生成UID。 enter image description here
任何人都可以对明确使用的理解提出一些看法 和隐式SerialVersion UID?

   class Emp implements Serializable {
 private static final long serialversionUID =
                             1293488886969693L;


       int age;


 public Emp(int age)
 {
     this.age = age;
 }

 }

1 个答案:

答案 0 :(得分:4)

serialver只是在给定类上计算此类ID的工具。 Java定义了一种从类定义中计算ID的方法。在课堂上定义它只是一种选择ID的方法。许多IDE使用serialver自动计算其值,但您可以自己编辑值并选择任何一个。

您可以阅读What is a serialVersionUID and why should I use it?