什么是串行版本 ID?
现在使用 Eclipse 进行一些 Java 工作。我的班级名称用黄色下划线标出。我可以抑制警告,也可以只添加 frickin 串行 ID。
我不在乎这两种方式(或者我应该吗?),但是这个序列号到底是什么?
谢谢
现在使用 Eclipse 进行一些 Java 工作。我的班级名称用黄色下划线标出。我可以抑制警告,也可以只添加 frickin 串行 ID。
我不在乎这两种方式(或者我应该吗?),但是这个序列号到底是什么?
谢谢
它与Java序列化有关。
当类的字段发生更改时,您无法再取消序列化该类的其他版本。如果尝试,Java 将引发异常。
但是,有时字段的更改并不重要,您想说“无论如何都要取消序列化”。为此,请定义此序列号。现在,Java将使用该数字而不是反射来决定您的类定义是否“不同”。
最后,您可以通过定义自己的序列化函数来绕过所有这些问题,事实上,许多倡导者坚持认为您应该这样做。