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)
的副本。
对象示例:
也不会发生“循环”和“异常”。
答案 0 :(得分:1)
如果要使用循环引用,则必须在构建后更新其中之一,例如:
class A {
B b = new B();
}
class B {
A a;
}
...
A a = new A();
B b = a.b;
b.a = a;