Java 自定義類裡面的物件自動賦初值
阿新 • • 發佈:2019-01-22
在Java程式開發中,在自定義自己的類的時候,如果這個類的成員變數是基本的資料型別,就算宣告的時候沒有進行初始化,系統也會自動給其初始化一個值,但是方法裡面的區域性變數則必須要宣告一個初值,否則無法通過編譯(eclipse中):
public class Test1 {
public static void main(String[] args) {
DataTest data = new DataTest();
}
public static class DataTest{
int a;
float b;
double c;
boolean d;
public DataTest() {
System.out.println("int:" + a);
System.out.println("float:" + b);
System.out.println("double:" + c);
System.out.println("boolean:" + d);
}
public void test(){
int aa;
System.out .println("int:" + aa);//無法通過編譯
}
}
}
如上面的程式碼片所示,DataTest類種的成員變數並沒有賦初值,但是當我建立一個DataTest物件並列印成員變數的時候,系統的輸出如下:
int:0
float:0.0
double:0.0
boolean:false
所以系統是會給成員變數賦初值的,其關係對應如下:
int ——> 0
float ——> 0.0
double ——>0.0
boolean ——>false
但是在方法test()中定義的aa則不同,其無法通過編譯器的編譯會報錯。