serialVersionUID作用是什么以及如何生成的?

近期突然看到Java中的某些类中指定了 serialVersionUID,带着疑问找到了答案

当我们序列一个 .class 对象时如果不指定serialVersionUID, Java底层会帮助我们生成一个serialVersionUID,当我们正常序列化时候不会有任何问题,但是当我们增加了一个字段或者删除了一个字段,此时再进行反序列话,则会出现异常。为了避免这种现象,我们需要指定serivalVersionUID,我们可以理解为这个UID指定了一个序列化版本,当反序列化时按照这个版本进行反序列化。

具体细节:serialVersionUID作用是什么以及如何生成的?

posted @ 2022-10-27 13:35  程序员包子  阅读(55)  评论(0编辑  收藏  举报