public class B
{
}
public class A
{
private B b;
public B B { get { return b; } set { b = value; }
}
public void Main()
{
//B类的实例b占用空间单独另算,问题是:当这个实例给a的b字段赋值时,是否会让a的实例本身占用内存增加?
B b = new B();
A a = new A();
//字段B在null值时,实例a的内存空间是否会变小?
a.B = null;
//字段B在赋值以后,实例a的内存空间会因此而产生变化吗?
a.B = b;
}
一个A类内部定义了一个字段B类。字段B没有赋值。字段B类本身在外部已经实例化了。随时可以通过A类的方法为字段B类赋值。
那么A类实例本身的占用内存空间,是否会因为外部给字段B赋值时变大?又会不会因为给b字段设置null值而变小呢?谢谢
{
}
public class A
{
private B b;
public B B { get { return b; } set { b = value; }
}
public void Main()
{
//B类的实例b占用空间单独另算,问题是:当这个实例给a的b字段赋值时,是否会让a的实例本身占用内存增加?
B b = new B();
A a = new A();
//字段B在null值时,实例a的内存空间是否会变小?
a.B = null;
//字段B在赋值以后,实例a的内存空间会因此而产生变化吗?
a.B = b;
}
一个A类内部定义了一个字段B类。字段B没有赋值。字段B类本身在外部已经实例化了。随时可以通过A类的方法为字段B类赋值。
那么A类实例本身的占用内存空间,是否会因为外部给字段B赋值时变大?又会不会因为给b字段设置null值而变小呢?谢谢