我有很多类和它们之间的循环引用(例如,在类 A
中,我有一组来自类 B
和类 B
有一个属性作为类 A
的对象等)
当我尝试将所有内容从一个对象复制到另一个对象并修改基础对象时,由于列表的原因,我丢失了信息。
有没有办法将一个对象的每一个位复制到另一个对象?
编辑:
考虑以下类
class Book
{
private Set<Page> pages;
String title;
}
class Page
{
private Set<String> lines;
private int number;
private int numberOfLines;
private Book book;
}
我应该对两者使用 Cloneable
还是仅对 Book
使用就足够了?
您能帮我为 Book
类编写一个复制构造函数(或复制方法)吗?
最佳答案
如果您的对象图仅包含Serialized
类,则进行深度克隆的常见方法是序列化初始对象并反序列化结果。
您可以使用 ObjectOutputStream
和 ObjectInputStream
类来完成此操作。
关于java - 如何在 Java 中使用可序列化复制所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23162087/