嗨,我有以下代碼。當我使用實例變量,我得到如下輸出(默認值)java中的默認值
int value: 0
float value: 0.0
String value: null
Static int value: 0
但如果我嘗試聲明局部變量,並打印它給一個錯誤,該變量應該被初始化爲默認值。任何人都可以解釋我的理由嗎?
public class DefaultValues {
int a;
float b;
String c;
static int d;
public static void main(String[] args) {
int e; // <----
DefaultValues dv = new DefaultValues();
System.out.println("int value: "+dv.a);
System.out.println("float value: "+dv.b);
System.out.println("String value: "+dv.c);
System.out.println("Static int value: "+d);
System.out.println("local int value: "+e); // <----
}
}
局部變量沒有默認值。它們必須在使用前初始化。 –