java中的序列化serialversionuid

时间:2015-11-02 09:19:35

标签: java

我只想知道为什么我们只在java中使用long类型的serialVersionUID变量

`public static final long serialVersionUID = 1L;`

我的意思是我知道它是如何工作的+什么是序列化等。

但我很想知道为什么我们只采取长原始类型?为什么不是int或任何其他类型?

像这样

 public static final int serialVersionUID = 1;

java规范是否告诉我们这样做?

1 个答案:

答案 0 :(得分:3)

来自java.io.Serializable

的文档引用
  

可序列化类可以显式声明自己的serialVersionUID   通过声明一个名为“serialVersionUID”的字段必须是静态的,   final,和long long

所以是规范告诉我们使用long。否则,它将不会被识别为serialVersionUID。

相关问题