C#中 null 和 类A aa=new 类A(),其中aa只是构造了一下,没有进行任何操作,这时Null和aa用什么区别?

public class 类A{ }
2025-02-26 23:58:01
推荐回答(5个)
回答1:

1. 类A aa=new 类A()

aa是对象类A的实例:相当于你在房间中一个区域放置了桌子
(桌子是类A,放置在你房间的桌子aa)
2. 类A aa=null
aa是对象类A的空值:相当于你在房间中一个区域准备放置桌子(区域上是没有桌子的)
(桌子是类A,aa是在你心中预留的区域)

回答2:

楼下说的很清楚了,如果A a=null;这说明只是声明了一个对象但没有指向任何引用,而A a=new A();这个时候已经指向了引用,虽然这个引用什么都没做,这就好比给你分了一套房,但你没住,但是这个空间已经被指定了

回答3:

null是代表你给一个熟悉赋值,为空。而A aa=new A();而是一个类实例化开辟一个内存空间。是不同的。

回答4:

Null 不占内存空间。

类A aa=new 类A(); 占用一点点内存空间。

回答5:

只要有new 就会有占内存位置

至於最後java回收处理

这又是一回事