1、區域性(local)變數是在一個方法內定義的變數, 也被稱作自動(automatic)、臨時(temporary)或棧(stack)變數
- 當一個方法被執行時, 區域性變數被建立;當一個方法被終止時, 區域性變數被清除
- 區域性變數必須使用之前初始化, 否則編譯時將出錯
2、在方法外定義的變數被自動初始化
3、當一個物件被建立時,例項變數在分配儲存器的同時被下列值初始化
4、一個具有空值的引用不引用任何物件。試圖使用它引用的物件將會引起一個異常
5、如果使用||運算子,而且第一個表示式返回真, 則第二個表示式不必求值,因為整個表示式已經被認為是真。
6、如果使用&&運算子,當第一個子表示式是假時,第二個子表示式被跳過
7、用加號(+)進行串連結:如果+運算子中有一個自變數為String物件,則其它自變數將被轉換成String。
8、運算子>>進行算術或符號右移位。移位的結果是第一個運算元被2的冪來除,而指數的值是由第二個數給出的
9、運算子<<執行一個左移位。移位的結果是:第一個運算元乘以2的冪,指數的值是由第二個數給出的
10、對 + 運算子來說,當兩個運算元是原始資料型別時,其結果至少有一個int,並且有一個通過提升運算元到結果型別、或通過提升結果至一個較寬型別運算元而計算的值,這可能會導致溢位或精度丟失
11、在switch (expr) 語句中,expr必須與int型別是賦值相容的;byte, short或char型別可被升級;不允許使用浮點或long表示式
12、for迴圈一般用在那種迴圈次數事先可確定的情況,而while和do用在那種迴圈次數事先不可確定的情況
13、break語句被用來從switch語句、loop語句和預先給定了label的塊中退出;continue語句被用來略過並跳到迴圈體的結尾;
label可標識控制需要轉換到的任何有效語句,它被用來標識迴圈構造的複合語句
14、陣列一旦建立後,其大小不可調整。然而,你可使用相同的引用變數來引用一個全新的陣列
15、在處理物件陣列時,System.arraycopy()拷貝的是引用,而不是物件。物件本身不改變