重复什么是serialVersionUID,我为什么要使用它?
现在使用Eclipse进行一些java工作.我的班级名称用黄色下划线标出.我可以抑制警告或只添加frickin序列ID.
我不关心任何一种方式(或者我应该?),但这个序列号究竟是什么?
谢谢
它与Java序列化有关.
当类的字段发生更改时,您无法再反序列化该类的其他版本.如果您尝试,Java将抛出异常.
然而,有时候字段的变化并不重要,你想说"无论如何都要反序列化".为此,您可以定义此序列号.现在Java将使用该数字而不是反射来决定您的类定义是否"不同".
最后,您可以通过定义自己的序列化函数来解决所有这些问题,实际上许多支持者坚持认为您应该这样做.