Java 序列化是否适用于循环引用? [英] Does Java Serialization work for cyclic references?

查看:44
本文介绍了Java 序列化是否适用于循环引用?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

例如:对象 A 包含对象 B,对象 C 包含对象 A.

For example: Object A contains Object B that contains Object C that contains Object A.

对象 A 会正确序列化吗?

Will Object A serialize properly?

评论 #9 此处表示它不起作用.

Comment #9 here indicates that it does not work .

相比之下,XStream 表明它确实处理循环引用.

In contrast, XStream indicates that it does handle cyclic references.

推荐答案

是的,默认的 Java 序列化适用于循环引用.当您序列化对象 C 时,该字段将包含对已经序列化的对象 A 的反向引用,而不是再次对其进行序列化.

Yes, the default Java serialization works for cyclic references. When you serialize object C, the field will contain a backreference to the already-serialized object A instead of serializing it again.

这篇关于Java 序列化是否适用于循环引用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆