非初始化和初始化为 null 有什么区别?
2022-09-02 20:44:55
我有这个代码:
MyClass object;
.... some code here where object may or may not be initialised...
if (object.getId > 0) {
....
}
这会导致编译错误:可能尚未初始化,这很公平。object
现在我将代码更改为:
MyClass object;
.... some conditional code here where object may or may not be initialised...
if (object != null && object.getId > 0) {
....
}
我得到相同的编译错误!我必须初始化为空:object
MyClass object = null;
那么,不初始化对象和初始化为 null 之间有什么区别呢?如果我声明一个对象没有初始化,它不就是空的吗?
谢谢