2. 類、方法和變量修飾符

1) extends 繼承、擴(kuò)展

extends 關(guān)鍵字用在 class 或 interface 聲明中,用于指示所聲明的類或接口是其名稱后跟有 extends 關(guān)鍵字的類或接口的子類。子類繼承父類的所有變量和方法。 子類可以重寫父類的任何非 final 方法。一個類只能擴(kuò)展一個其他類。

2) final 最終的,最后的

final 關(guān)鍵字可以應(yīng)用于類,以指示不能擴(kuò)展該類(不能有子類)。final 關(guān)鍵字可以應(yīng)用于方法,以指示在子類中不能重寫此方法。一個類不能同時是abstract 又是 final。abstract 意味著必須擴(kuò)展類,final 意味著不能擴(kuò)展類。一個方法不能同時是 abstract 又是 final。abstract意味著必須重寫方法,final 意味著不能重寫方法。

5)implements實現(xiàn)

implements 關(guān)鍵字在 class 聲明中使用,以指示所聲明的類提供了在 implements 關(guān)鍵字后面的名稱所指定的接口中所聲明的所有方法的實現(xiàn)。類必須提供在接口中所聲明的所有方法實現(xiàn)。一個類可以實現(xiàn)多個接口。

6) interface 接口

interface 關(guān)鍵字用來聲明新的 Java 接口,接口是方法的集合。

接口是 Java 語言的一項強(qiáng)大功能。任何類都可聲明它實現(xiàn)一個或多個接口,這意味著它實現(xiàn)在這些接口中所定義的所有方法。

實現(xiàn)了接口的任何類都必須提供在該接口中的所有方法的實現(xiàn)。一個類可以實現(xiàn)多個接口。

7) native 本地

native 關(guān)鍵字可以應(yīng)用于方法,以指示該方法是用 Java 以外的語言實現(xiàn)的。

8) new 新,創(chuàng)建

new 關(guān)鍵字用于創(chuàng)建類的新實例。

new 關(guān)鍵字后面的參數(shù)必須是類名,并且類名的后面必須是一組構(gòu)造方法參數(shù)(必須帶括號)。

9) static 靜態(tài)

static 關(guān)鍵字可以應(yīng)用于內(nèi)部類(在另一個類中定義的類)、方法或字段(類的成員變量)。

通常,static 關(guān)鍵字意味著應(yīng)用它的實體在聲明該實體的類的任何特定實例外部可用。

static(內(nèi)部)類可以被其他類實例化和引用(即使它是頂級類)。

static 字段(類的成員變量)在類的所有實例中只存在一次。

可以從類的外部調(diào)用 static 方法,而不用首先實例化該類。這樣的引用始終包括類名作為方法調(diào)用的限定符。

10) synchronized線程、同步

synchronized 關(guān)鍵字可以應(yīng)用于方法或語句塊,并為一次只應(yīng)由一個線程執(zhí)行的關(guān)鍵代碼段提供保護(hù)。

synchronized 關(guān)鍵字可防止代碼的關(guān)鍵代碼段一次被多個線程執(zhí)行。

如果應(yīng)用于靜態(tài)方法,那么,當(dāng)該方法一次由一個線程執(zhí)行時,整個類將被鎖定。

如果應(yīng)用于實例方法,那么,當(dāng)該方法一次由一個線程訪問時,該實例將被鎖定。

如果應(yīng)用于對象或數(shù)組,當(dāng)關(guān)聯(lián)的代碼塊一次由一個線程執(zhí)行時,對象或數(shù)組將被鎖定。

1. 程序控制語句

1) break 跳出,中斷

break 關(guān)鍵字用于提前退出 for、while 或 do 循環(huán),或者在 switch 語句中用來結(jié)束 case 塊。

break 總是退出最深層的 while、for、do 或 switch 語句。

2) continue 繼續(xù)

continue 關(guān)鍵字用來跳轉(zhuǎn)到 for、while 或 do 循環(huán)的下一個迭代。

continue 總是跳到最深層 while、for 或 do 語句的下一個迭代。

3) return 返回

return 關(guān)鍵字會導(dǎo)致方法返回到調(diào)用它的方法,從而傳遞與返回方法的返回類型匹配的值。

如果方法具有非 void 的返回類型,return 語句必須具有相同或兼容類型的參數(shù)。

返回值兩側(cè)的括號是可選的。

4) while 循環(huán)

while 關(guān)鍵字用于指定一個只要條件為真就會重復(fù)的循環(huán)。

5) if 如果

if 關(guān)鍵字指示有條件地執(zhí)行代碼塊。條件的計算結(jié)果必須是布爾值。

if 語句可以有可選的 else 子句,該子句包含條件為 false 時將執(zhí)行的代碼。

包含 boolean 操作數(shù)的表達(dá)式只能包含 boolean 操作數(shù)。

6) else 否則

else 關(guān)鍵字總是在 if-else 語句中與 if 關(guān)鍵字結(jié)合使用。else 子句是可選的,如果 if 條件為 false,則執(zhí)行該子句。

7) for 循環(huán)

for 關(guān)鍵字用于指定一個在每次迭代結(jié)束前檢查其條件的循環(huán)。

控件流進(jìn)入 for 語句時,將執(zhí)行一次 initialize 語句。

每次執(zhí)行循環(huán)體之前將計算 condition 的結(jié)果。如果 condition 為 true,則執(zhí)行循環(huán)體。

每次執(zhí)行循環(huán)體之后,在計算下一個迭代的 condition 之前,將執(zhí)行 increment 語句。

8) instanceof 實例

instanceof 關(guān)鍵字用來確定對象所屬的類。

9) switch 觀察

switch 語句用于基于某個表達(dá)式選擇執(zhí)行多個代碼塊中的某一個。

switch 條件的計算結(jié)果必須等于 byte、char、short 或 int。

case 塊沒有隱式結(jié)束點。break 語句通常在每個 case 塊末尾使用,用于退出 switch 語句。

如果沒有 break 語句,執(zhí)行流將進(jìn)入所有后面的 case 和/或 default 塊。

10) case 返回觀察里的結(jié)果

case 用來標(biāo)記 switch 語句中的每個分支。

case 塊沒有隱式結(jié)束點。break 語句通常在每個 case 塊末尾使用,用于退出 switch 語句。

如果沒有 break 語句,執(zhí)行流將進(jìn)入所有后面的 case 和/或 default 塊。

11) default 默認(rèn)

default 關(guān)鍵字用來標(biāo)記 switch 語句中的默認(rèn)分支。

default 塊沒有隱式結(jié)束點。break 語句通常在每個 case 或default 塊的末尾使用,以便在完成塊時退出 switch 語句。

如果沒有 default 語句,其參數(shù)與任何 case 塊都不匹配的 switch 語句將不執(zhí)行任何操作。

匯智動力王云:Java關(guān)鍵字詳解(二)

匯智動力

匯智動力是以發(fā)展高、精、尖的創(chuàng)新業(yè)務(wù)設(shè)計和創(chuàng)意咨詢?yōu)橹饕獦I(yè)務(wù)內(nèi)容,致力于以高端人才帶動整個產(chǎn)業(yè)的理念革新和方法進(jìn)步,從而促進(jìn)整個產(chǎn)業(yè)鏈的健康循環(huán)發(fā)展。匯智動力的合作客戶包括中軟、軟通、中國電信、中國兵器、華為、騰訊、晨星、順豐等行業(yè)翹楚,重視軟件開發(fā)方法和軟件質(zhì)量評審,鼓勵創(chuàng)意設(shè)計,尋求業(yè)務(wù)模式創(chuàng)新。