我正在扩展一个实现 Serializable interface 的类 (ArrayBlockingQueue) . Sun 的文档(和我的 IDE)建议我应该设置这个值以防止恶作剧:
However, it is strongly recommended that all serializable classes explicitly declare serialVersionUID values, since the default serialVersionUID computation is highly sensitive to class details that may vary depending on compiler implementations, and can thus result in unexpected InvalidClassExceptions during deserialization.
现在,我不在乎要放什么值(value)。有关系吗?
最佳答案
不 - 只要您在正确的时间更改它(即当您进行影响序列化的更改时,例如删除一个字段),您使用什么值并不重要。
为简单起见,我建议从 0 开始,每次需要时将其增加 1。
serialization spec有更多细节。
关于java - 在 Java 中扩展 Serializable 类时,我为 serialVersionUID 选择什么重要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/605828/