可序列化类Employee不声明long类型的静态最终serialVersionUID字段

时间:2014-01-06 18:22:29

标签: java eclipse serialization serialversionuid

在我的Eclipse中,我尝试了序列化的例子,我遇到了警告

enter image description here

我知道serialVersionUID是什么,它在序列化中的意义是什么。我有关于此警告的以下问题

  1. IDE如何分配默认值。它是否在IDE中进行了硬编码?
  2. 当它说生成id时,用什么参数来生成新的id?
  3. 不确定第3个选项是什么。说一些关于抑制注释的东西。这是否意味着根本没有分配id。在那种情况下,序列化中使用了什么?

1 个答案:

答案 0 :(得分:3)

  

IDE如何分配默认值。它是否在IDE中进行了硬编码?

是默认值是硬编码值,即1L

  

当它说生成id时,用什么参数来生成新的id?

通常会使用方法字段和方法签名来确定它,因为你是专门询问eclipse,不确定它,有一个serialver utillity只为你的类提供serialVersionUID

$serialver A
serialver A:    static final long serialVersionUID = -609421954100196333L;
  

不确定第3个选项是什么。说一些关于抑制注释的东西。这是否意味着根本没有分配id。在那种情况下,序列化中使用了什么?

它说,通过添加@SuppressWarning注释,指示java编译器不要为这种情况抱怨此特定警告


另见