如果您获取一个从未明确指定serialVersionUID的旧可序列化对象,然后将serialVersionUID添加到该对象,会发生什么?在我看来,下一次由最终用户更新应用程序时,它将尝试反序列化磁盘中的数据,发现serialVersionUID不匹配,用服务器/ db /中的新数据覆盖数据,然后再执行此操作很好。我对这个假设是否正确?在执行此操作时,我是否还要警惕其他问题?
private class X implements serializable {... private static final long serialVersionUID = 0L;
serialver
InvalidClassException
在我看来,下次由最终用户更新应用程序时,它将尝试反序列化光盘中的数据
正确。
找出serialVersionUID不匹配
仅当它确实不匹配时。如果您遵循上述建议,则它将匹配。
用服务器/数据库/任何地方的新数据覆盖数据
不正确 往上看。
然后你就没事了。
没有。
我对这个假设是否正确?