1. 类A aa=new 类A()
aa是对象类A的实例:相当于你在房间中一个区域放置了桌子
(桌子是类A,放置在你房间的桌子aa)
2. 类A aa=null
aa是对象类A的空值:相当于你在房间中一个区域准备放置桌子(区域上是没有桌子的)
(桌子是类A,aa是在你心中预留的区域)
楼下说的很清楚了,如果A a=null;这说明只是声明了一个对象但没有指向任何引用,而A a=new A();这个时候已经指向了引用,虽然这个引用什么都没做,这就好比给你分了一套房,但你没住,但是这个空间已经被指定了
null是代表你给一个熟悉赋值,为空。而A aa=new A();而是一个类实例化开辟一个内存空间。是不同的。
Null 不占内存空间。
类A aa=new 类A(); 占用一点点内存空间。
只要有new 就会有占内存位置
至於最後java回收处理
这又是一回事