您的位置:首页 > 产品设计 > UI/UE

【注意】Java序列化serialVersionUID问题

2017-10-08 04:09 393 查看


Java序列化serialVersionUID问题

当没有显式地定义serialVersionUID变量时,Java序列化机制会根据编译的class(它通过类名,方法名等诸多因素经过计算而得,理论上是一一映射的关系,也就是唯一的)自动生成一个serialVersionUID作序列化版本比较用。

这种情况下,如果class文件(类名,方法名等)没有发生变化(增加空格,换行,增加注释,等等),就算再编译多次,serialVersionUID也不会变化的。但是一旦变化,如给类增加了方法、属性等,那么在反序列化时,就会出现序列化版本不一致的异常(InvalidCastException)!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息