關鍵字 & 保留字
關鍵字(或者保留字)是對編譯器有特殊意義的固定單詞,不能在程式中做其他目的使用。
關鍵字具有專門的意義和用途,和自定義的識別符號不同,不能當作一般的識別符號來使用。例如, class 就是一個關鍵字,它用來宣告一個類。public 也是關鍵字,它用來表示公共類。另外,static 和 void 也是關鍵字。
關鍵字(keyword)
Java 的關鍵字對 Java 編譯器有特殊的意義,它們用來表示一種資料型別,或者表示程式的結構等。
關鍵字 | 描述 |
---|---|
import | 表明引入的指定類或包 |
package | 宣告包 |
class | 宣告類 |
extends | 宣告一個型別是另一個型別的子型別,這裡常見的型別有類和介面,繼承用 |
implements | 表明一個類實現了給定的介面 |
interface | 介面 |
abstract | 表明類或者成員方法具有抽象屬性 |
final | 用來說明最終屬性,表明一個類不能派生出子類,或者成員方法不能被覆蓋,或者成員域的值不能被改變 |
native | 用來宣告一個方法是由與計算機相關的語言(如C/C++/FORTRAN語言)實現的 |
private | 一種訪問控制方式:私用模式 |
protected | 一種訪問控制方式:保護模式 |
public | 一種訪問控制方式:共用模式 |
static | 表明具有靜態屬性 |
synchronized | 表明一段程式碼需要同步執行 |
transient | 宣告不用序列化的成員域 |
volatile | 表明兩個或者多個變數必須同步地發生變化 |
new | 用來建立新例項物件 |
instanceof | 用來測試一個物件是否是指定型別的例項物件 |
do | 用在do-while迴圈結構中 |
while | 用在迴圈結構中 |
for | 一種迴圈結構的引導詞 |
continue | 回到一個塊的開始處 |
break | 提前跳出一個塊 |
return | 從成員方法中返回資料 |
if | 條件語句的引導詞 |
else | 用在條件語句中,表明當條件不成立時的分支 |
switch | 分支語句結構的引導詞 |
case | 用在switch語句之中,表示其中的一個分支 |
default | 預設,例如,用在switch語句中,表明一個預設的分支 |
try | 嘗試一個可能丟擲異常的程式塊 |
catch | 用在異常處理中,用來捕捉異常 |
finally | 表示最終執行塊 |
throw | 丟擲一個異常 |
throws | 宣告在當前定義的成員方法中所有需要丟擲的異常 |
boolean | 基本資料型別之一,布林型別 |
byte | 基本資料型別之一,位元組型別 |
char | 基本資料型別之一,字元型別 |
double | 基本資料型別之一,雙精度浮點數型別 |
float | 基本資料型別之一,單精度浮點數型別 |
int | 基本資料型別之一,整數型別 |
long | 基本資料型別之一,長整數型別 |
short | 基本資料型別之一,短整數型別 |
null | 空 |
true | 正確 |
false | 錯誤 |
super | 表明當前物件的父型別的引用或者父型別的構造方法 |
this | 指向當前例項物件的引用 |
void | 宣告當前成員方法沒有返回值 |
strictfp | 用來宣告FP_strict(單精度或雙精度浮點數)表示式遵循IEEE 754算術規範 |
assert | 斷言 |
保留字(reserved word)
保留字是為 Java 預留的關鍵字,在Java現有版本中沒有特殊含義,以後版本可能會作為有特殊含義的詞,或者該詞雖然在Java中沒有特殊含義,以後版本也不打算使用,但在其它語言中有特殊含義,不宜在Java中定義為變數名稱等,因為容易混淆。
保留字 | 描述 |
---|---|
goto | 保留關鍵字,沒有具體含義 |
const | 保留關鍵字,沒有具體含義 |
byValue | 保留關鍵字,沒有具體含義 |
cast | 保留關鍵字,沒有具體含義 |
future | 保留關鍵字,沒有具體含義 |
generic | 保留關鍵字,沒有具體含義 |
inner | 保留關鍵字,沒有具體含義 |
operator | 保留關鍵字,沒有具體含義 |
outer | 可做標籤 |
rest | 保留關鍵字,沒有具體含義 |
var | 保留關鍵字,沒有具體含義 |
false | 錯誤 |
true | 正確 |
null | 空 |
關鍵字分組
關鍵字一律用小寫字母標識,按其用途劃分為如下幾組。
- 用於資料型別:關鍵字有 boolean、byte、char、 double、 short、float、int、long、new、void、instanceof。
- 用於語句:關鍵字有switch、case、break、 default 、try、 catch、 finally、throw、do、 while、 for、continue、return、 if、else、 this、 super。
- 用於修飾:關鍵字有 abstract、final、native、private、 protected、public、static、synchronized、transient、 volatile。
- 用於方法、類、介面、包和異常:關鍵字有 class、 extends、 implements、interface、 package、import、throws。
- 還有cast、 future、 generic、innerr、 operator、 outer、rest、var、goto、const等都是 Java 保留的關鍵字,也叫保留字。
- 另外,Java還有3個特殊的關鍵字:true、false、null。嚴格意義上說它們不是關鍵字,而是用於定義資料型別值的字面值。