java - serialVersionUID = 1L 比生成串行版本 id 更好吗?

标签 java serialization

这可能是一个愚蠢的问题,但我仍然要求答案。我编写了一个程序,使用 Eclipse IDE 生成序列版本 id。但我的项目负责人坚持我只使用 1L,而不是在可序列化接口(interface)的情况下生成串行版本 id。请建议我哪个更好。最好使用 1L 或在实现 Serialized 接口(interface)时生成串行版本 id。两者有什么区别吗?对性能有影响吗?

提前致谢。

最佳答案

这完全取决于理由。如果使用 1L并且从未更改(当序列化兼容性更改时),那么您就会遇到问题(并且很可能是损坏的序列化协议(protocol))。如果 1L 用作第一个版本,然后根据需要手动递增,那么就可以了。只要维护得当,版本的实际值(value)并不重要(除了极少数情况)。

关于java - serialVersionUID = 1L 比生成串行版本 id 更好吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26328217/

相关文章:

hadoop - Thrift、Avro、Protocolbuffers——它们都死了吗?

javascript - 在 MVC 中将 2D 对象数组 C# 转换为 Javascript

java - 同时使用 java.nio.FileChannel 从两个不同的 JVM 写入和读取文本文件

java - 使用递归查找给定字符串中的最小字符

java - 透明场景和舞台不适用于 javafx 中的按钮

java - 休息服务在 POJO 中序列化 JSON 请求后如何调用方法?

java - 自定义 ArrayList 序列化

java - 将 ActionListener 添加到小程序中的按钮数组

java - 如何检测 URL 对象是否与 Collection 中的另一个 URL 对象指向相同的路径

c# - 元组无法序列化,因为它没有无参数构造函数