序列化对象是否兼容所有版本的java?

Rak*_*yal 2 java serialization version

我的朋友问我是否在java 1.5中序列化一个对象然后在java 1.6中反序列化它然后它会引发一个异常.什么是异常以及抛出的原因?

但我怀疑会有任何例外.在类定义中没有改变原因,因此在从序列化表单重建对象时不应该遇到任何问题.我对吗?如果没有,那么抛出异常的原因和原因是什么?

注意:该类保持不变,不是任何字段,不是方法,而是更改serialVersionUID.

Mic*_*rdt 6

序列化格式有一个详细的规范,只是为了适应新的语言功能(例如Java 5中的枚举)而改变,我很确定任何这些更改都是向下兼容的.

因此,除非您遇到错误(当然可能)或尝试使用某些功能尚未存在的Java版本反序列化,否则反序列化应该适用于不同的Java版本,供应商和平台.