私はこのようなクラス構造を持っています。
class A
{
B b;
A()
{
b = new B();
b.a = this;
}
}
class B
{
A a;
}
class C
{
A a = new A();
//a is ready for Garbage collection
a = null;
}
アクティビティ Destroy() で、変数 a = null を設定します。しかし、ヒープでは、変数 b が B の参照を保持していることがわかります。
誰でもこれを説明できますか?