B M*_*B M 9 java initialization
我对Java中的变量初始化感到困惑.据我所知,类变量获取默认初始化,而默认情况下不初始化局部变量.但是,如果我使用new关键字在方法内创建一个数组,它默认会初始化.所有对象都是如此吗?使用new关键字是否初始化对象,无论它是类变量还是局部变量?
在进一步调查之后,只有当它们是成员变量时,原语才会始终初始化为默认值,如果未初始化,则局部变量将抛出编译错误.
如果您创建一个基元数组,它们将默认初始化(对于本地和成员数组都是如此),您需要实例化每个对象的数组.
所有物体都是如此吗?使用 new 关键字是否会初始化对象,无论它是类变量还是局部变量?
当你使用new关键字时。这意味着您已经初始化了您的对象。它是在方法级别还是实例级别声明并不重要。
public void method(){
Object obj1;// not initialized
Object obj2 = new Object();//initialized
}
Run Code Online (Sandbox Code Playgroud)