Java Serialization是否适用于循环引用?

Bra*_*don 16 java serialization serializable

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

对象A序列化是否正确?

这里的注释#9 表示它不起作用.

相反,XStream表示它确实处理循环引用.

Ste*_*ker 18

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

  • 有没有关于它如何工作的文档...我想在我自己的序列化实现中处理这个. (2认同)

Pau*_*and 5

是的,Java 序列化适用于循环引用,请阅读此处了解更多信息,以帮助您了解 Java 序列化的功能。

  • 感谢您的链接“保留了循环引用和对单个对象的多个引用等特殊情况,这样当重新创建树图时,新对象不会神奇地出现在对树中另一个对象的引用应该出现的位置。” http://java.sun.com/developer/technicalArticles/ALT/serialization/ (3认同)