将第一个“对象”复制到所有“对象”内部

时间:2018-12-14 21:31:52

标签: java loops object

public class ObjectA {

   public int ID = 0;
   public string Name = "";
   public ObjectB b = new ObjectB();

}

public class ObjectB {

   public int ID = 0;
   public string Name = "";
   public ObjectA a = new ObjectA();

}

如何使用:

ObjectA a = new ObjectA();
ObjectB b = new ObjectB();
a.ID = 1;
a.Name = "Same Name A";
b.ID = 1;
b.Name = "Same Name B";
a.b = b;

String aName = a.b.a.b.a.Name;// == "Same Name A"

我希望a(ObjectA)之后的所有a.b是第一个a的副本。 a.b.a之后的所有内容都是第一个b(ObjectB)的副本。

对象示例:

example of Object

也不会发生“循环”和“异常”。

1 个答案:

答案 0 :(得分:1)

如果要使用循环引用,则必须在构建后更新其中之一,例如:

class A {
    B b = new B();
}

class B {
    A a;
}

...

A a = new A();
B b = a.b;
b.a = a;