java序列化版本号

AC_YE 2021-02-06 01:10:12
一个类实现Serializable这个接口后写一个固定的序列化版本号private static final long serialVersionUID这个变量名serialVersionUID可以改成其他的吗 ?这个变量名哪里来的,私有的应该不是继承过来的吧
...全文
228 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
韩_师兄 2021-02-07
  • 打赏
  • 举报
回复
用idea的话,可以在里面设置一下
KeepSayingNo 2021-02-07
  • 打赏
  • 举报
回复
实现Serializable这个接口后,你鼠标放在你类上,然后ctrl+enter可以自动生成
qybao 2021-02-06
  • 打赏
  • 举报
回复
可以,因为这个变量可以不定义,系统会根据编译的class自动生成一个比较用的serislVersionUID 如果不希望通过编译来划分版本,就要自己显示定义这个变量 该变量是用来判断反序列化时,目标class的版本是否和序列化时的版本一样,如果一样则可反序列化,否则就出异常
rumlee 2021-02-06
  • 打赏
  • 举报
回复
serialVersionUID名称不能修改成别的,是在jdk核心包规范里面就规定了名称的。
起名伤脑 2021-02-06
  • 打赏
  • 举报
回复
两种生成策略,一个是固定的 1L,一个是随机生成一个不重复的 long 类型数据(实际上是使用 JDK 工具生成)

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧