變數可以分為兩種,一種是方法內的區域性變數,另一種是類的成員變數;對於區域性變數,編譯器強制只有在初始化其值得時候才能使用,而成員變數會進行預設初始化。
一、區域性變數必須先初始化後使用
public class test
} 二、成員變數的初始化
所有的成員變數(包括基本型別和類引用),其自動初始化是在剛給其分配記憶體時進行的,也就是說,自動初始化在所有其他的初始化方式之前進行。
乙個類檔案的基本執行過程:
1、在成員變數定義處初始化:
public class person
} 特點:
a, person類所有的物件的id和name的初始值分別為1和ricken;
b, 該初始化在自動初始化之後,在所有的方法(包括構造方法)呼叫前進行;
c, 變數初始化的順序和變數宣告的順序一致(先初始化id然後初始化name);
2、建構函式初始化
變數初始化
int a 是變數定義,也就是說編譯器將為a分配儲存,這在編譯時被處理。int a 0 是定義 初始化,定義的分配儲存的action在編譯時完成,初始化的action則在執行時完成 將執行類似dword ptr ebp 4 0的指令,而單獨的int a 不會有對應的執行指令 定義是分配空間,而初始化...
變數的初始化
1.關於基本資料型別和引用資料型別初始化的值 package com.dbzhang.demo2 public class watersource public string tostring package com.dbzhang.demo2 public class sprinklersyste...
初始化列表成員變數的初始化
對於以下程式 include using namespace std class base base b 0 a b int get a int get b int main 本想得到的結果是a,b都為90。但是實際結果卻是 4273046 90process returned 0 0x0 exec...