读书人

请教2个实体类,互为成员时,实例化的时

发布时间: 2012-08-25 10:06:20 作者: rapoo

请问2个实体类,互为成员时,实例化的时候内存是个什么状况
比如:
public Class A
{
public B b;
}

public Class B
{
public A a;
}
实例化的时候内存是个什么状况
比如
A a1=new A();
会不会造成死循环,为什么呢?

[解决办法]
A在实例化的时候会将你的b置为null,所以不会有死循环。
但当你两个对象中在申明字段时都实例化了就死了。
[解决办法]
new A时,A中的b只是声明,并没有创建实例,如果在A的构造函数中创建B,那么就会调用B的构造函数,如果B的构造函数中又创建A,那么就是死循环

读书人网 >C#

热点推荐