您的位置首页百科问答

serialVersionUID是什么?

serialVersionUID是什么?

serialVersionUID:意思是序列化的版本号。【作用】一些java类中为什么需要重载 serialVersionUID 属闷衫性。在Java中,软件的兼容性是一个大问题,尤其在使用到对象串行性的时候,那么在某一个对象已经被串行化了,可是这个对象又被修改后重新部署了,那么在这种情况下, 用老软件来读取新文件格式蚂和腔虽然不是什么难事,但是有可能丢失一些棚扮信息。serialVersionUID来解决这些问题,新增的serialVersionUID必须定义成下面这种形式:static final long serialVersionUID=-2805284943658356093L;。其中数字后面加上的L表示这是一个long值。 通过这种方式来解决不同的版本之间的串行话问题。【生成方式】它有两种显示的生成方式:一个是默认的1L,比如:private static final long serialVersionUID = 1L;。一个是根据类名、接口名、成员方法及属性等来生成一个64位的哈希字段,比如:private static final long serialVersionUID = xxxxL。