Han*_*etz 42 java serialization
我正在扩展一个实现Serializable接口的类(ArrayBlockingQueue).Sun的文档(和我的IDE)告诉我,我应该设置这个值以防止恶作剧:
但是,强烈建议所有可序列化类显式声明serialVersionUID值,因为默认的serialVersionUID计算对类细节高度敏感,这些细节可能因编译器实现而异,因此在反序列化期间可能导致意外的InvalidClassExceptions.
现在,我不在乎放在那里的价值.有关系吗?
Gar*_*ryF 13
对serialVersionUID唯一重要的是该类的二进制兼容的序列化版本具有相同的serialVersionUID; 也就是说,如果你没有对类的序列化形式进行任何重大更改,那就没关系了.
当然,更好的选择是使用序列化提供给您的高级选项,以便永远不会有任何重大更改.我建议阅读readResolve()等.有效的Java详细介绍了该领域的一些棘手问题.
| 归档时间: |
|
| 查看次数: |
8719 次 |
| 最近记录: |