类名 a = new 类名
a 应该是空的吧
如果只有: 类名 a ; ,这种情况下,a 是null,因为还没有实例化,没有分配堆空间。
如果有: 类名 a = new 类名(); 相当于两句代码:
1、 类名 a;
2、 a = new 类名(); //实例化,new出一块堆内存给a。这时,a就有指向的堆内存了(虽然堆内存里基本没啥东西),就不是null了。
新 new 来的对象,不是空,但需要赋值。如果是空,就无法赋值了。
new了就不是null,只是没数据而已