序列化异常:
--java.io.InvalidClassException: DemoPerson; local class incompatible: stream classdesc serialVersionUID = -3456565876962051234, local class serialVersionUID = -3452153069362644521
序列化流:把对象按照流一样的方式存入文本文件或者在网络中传输。 对象 -- 流数据(ObjectOutputStream)
反序列化流:把文本文件中的流对象数据或者网络中的流对象数据还原成对象。流数据 -- 对象(ObjectInputStream)
序列化流和反序列化流不同于字节流 字符流 内存字节流,这些都是把字符串写入/读取文件,序列化流和反序列化流可以将对象写入/读取文本文件中
但是我们要注意的是,写入和读取的文件要实现Serializable这个接口,当然这个接口是没有任何方法的,直接implements就好,类似于这种没有任何方法的接口被称为标记接口.
解决方法:
一、尽量保证序列前后的类保持一致;
二、在实现序列化的类中统一所有serialVersionUID
原文:https://blog.csdn.net/weixin_42038771/article/details/80560619