答案 0 :(得分:2)
更改serialVersionUID的唯一原因是,如果您希望故意破坏与所有现有序列的兼容性,或者是否对类的结构进行了不兼容的更改。这是list不兼容的变化。
但是如果你需要更改它,你可以使用serialver工具生成你的jvm可能正在使用的serialVer:
serialver -classpath com.foo.bar.MyClass
在您的类中手动设置serialVerUID,它应匹配并能够加载,假设您没有以无效方式更改类。希望这有帮助
答案 1 :(得分:0)
如果编译了导入类的代码,则为no。 serialVersionUID
属性的类型为long
,无法更改。
但是,只要可行,您就可以将其投射到您想要的任何类型。如果不是,你可以转换它。