在项目中经常看到这样的语句:private static final long serialVersionUID = 2008524502721775114L;为什么要加入这样的语句?有什么用途?一般在什么情况下加入这样的语句?在eclipse中 有没有快捷键自动加入这样的语句而不用手工输入?

解决方案 »

  1.   

    serialVersionUID 用来表明类的不同版本间的兼容性。如果你修改了此类, 要修改此值。否则以前用老版本的类序列化的类恢复时会出错。为了在反序列化时,确保类版本的兼容性,最好在每个要序列化的类中加入private static final long serialVersionUID这个属性,具体数值自己定义。
      在警告上点左键就可以自动添加。当然也可以去掉警告。设置:Window-->Preferences-->Java,将serializable class without serialVersionUID的设置由warning改为Ignore。然后Eclipse会重新编译程序,那些警告信息也就消失了。