日期:2014-05-19  浏览次数:20697 次

serialVersionUID是做什么用的
网上搜索说:
  序列化时为了保持版本的兼容性,即在版本升级时反序列化仍保持对象的唯一性。


但是不理解。这个具体是怎么做了什么,怎么实现的

------解决方案--------------------
如果没有显示的声明serialVersionUID,java系列化机制会根据编译后的classes自动生成一个serialVersionUID,
与本地相应的的实体类的serialVersionUID比较,如果相同就认为是一致的,可以进行反系列化,否则就会出现系列化版本不一致的异常~~~
在很多情况~~比如常见的就是二次开发。如果我们不希望通过编译来强制的划分软件的版本,即实现系列化接口的实体能够兼容前版本,没有做任何更改的类,就要显示的定义一个serialVersionUID。