Java關(guān)鍵字有其特別意義的標(biāo)識(shí)符,還有特別意義的變量。Java的關(guān)鍵字對(duì)Java的編譯器有特殊的意義,他們用來表示一種數(shù)據(jù)類型或程序結(jié)構(gòu)。今天匯智動(dòng)力Java開發(fā)的王老師為大家整理了關(guān)于Java關(guān)鍵字詳解,讓你快速掌握J(rèn)ava關(guān)鍵字。

java

解析:
一、訪問修飾符(訪問控制符)


1. public 公共的
public 關(guān)鍵字是可以應(yīng)用于類、方法或字段(在類中聲明的變量)的訪問控制修飾符??赡苤粫?huì)在其他任何類或包中引用 public 類、方法或字段。


2. protected 受保護(hù)的
protected 關(guān)鍵字是可以應(yīng)用于類、方法或字段(在類中聲明的變量)的訪問控制修飾符??梢栽诼暶?protected 類、方法或字段的類、同一個(gè)包中的其他任何類以及任何子類(無論子類是在哪個(gè)包中聲明的)中引用這些類、方法或字段。


3. private 私有的
private 關(guān)鍵字是訪問控制修飾符,可以應(yīng)用于類、方法或字段(在類中聲明的變量)。只能在聲明 private類(不可用于普通類,只用于內(nèi)部類)、方法或字段的類中引用這些類、方法或字段。在類的外部或者對(duì)于子類而言,它們是不可見的,不能直接使用。


4. 默認(rèn)的 不使用任何關(guān)鍵字
不使用任何修飾符聲明的屬性和方法,對(duì)同一個(gè)包內(nèi)的類是可見的。接口里的變量都隱式聲明為public static final,而接口里的方法默認(rèn)情況下訪問權(quán)限為public。



二、類、方法和變量修飾符
1. abstract 聲明抽象
abstract關(guān)鍵字可以修改類或方法。abstract類可以擴(kuò)展(增加子類),但不能直接實(shí)例化。abstract方法不在聲明它的類中實(shí)現(xiàn),但必須在某個(gè)子類中重寫(除非子類也abstract類)。采用abstract方法的類本來就是抽象類,并且必須聲明為abstract。


2. class類
class 關(guān)鍵字用來聲明新的 Java 類,該類是相關(guān)變量和/或方法的集合。類是面向?qū)ο蟮某绦蛟O(shè)計(jì)方法的基本構(gòu)造單位。類通常代表某種實(shí)際實(shí)體,如幾何形狀或人。類是對(duì)象的模板。每個(gè)對(duì)象都是類的一個(gè)實(shí)例。要使用類,通常使用 new 操作符將類的對(duì)象實(shí)例化,然后調(diào)用類。

 

3.extends 繼承、擴(kuò)展

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

 

4. final 最終的,最后的

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

 

5.implements實(shí)現(xiàn)

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

 

6. interface 接口

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

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

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

 

7. native 本地

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

 

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

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

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

 

9. static 靜態(tài)

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

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

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

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

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

 

10.synchronized線程、同步

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

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

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

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

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

 

三、 程序控制語句

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)的下一個(gè)迭代。

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

 

3. return 返回

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

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

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

 

4.while 循環(huán)

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

 

5. if 如果

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

if 語句可以有可選的 else 子句,該子句包含條件為 false 時(shí)將執(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)鍵字用于指定一個(gè)在每次迭代結(jié)束前檢查其條件的循環(huán)。

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

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

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

 

8. instanceof 實(shí)例

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

 

9. switch 觀察

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

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

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

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

 

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

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

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

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

 

11. default 默認(rèn)

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

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

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