1. 程式人生 > 其它 >Java識別符號和關鍵字詳解

Java識別符號和關鍵字詳解

在程式設計語言中,識別符號是用作程式的某一元素的名字的字串或用來標識源程式中某個物件的名字的。這個元素可以是一個語句標號,一個過程或函式、一個數據元素(例如一個標量變數或一個數組)或程式本身。最通常是,識別符號這個字幾乎與變數名同義地使用。在程式資料的位置在整個程式執行期間保持不變的系統中,用於標量變數的識別符號聯絡到儲存器地址,而儲存器地址又指向機器的儲存器內的物理單元,該單元又含有一個值的表示。識別符號與一個值之間的中間關係通常對程式設計師是透明的,因此在實際中在一個變數的名字(即其識別符號)與其值(它是分配給該識別符號的儲存單元的當前內容)之間出現混淆。在大多數程式設計語言中,識別符號可由任何字母數字字串形成,長度往往有限制(通常為6到8個字元),只要最左邊字元是字母。有些語言還容許採用專用字元。因此任何一種計算機語言都離不開識別符號和關鍵字,

下面將介紹一下 Java 的識別符號、關鍵字和保留字。

識別符號

Java 中識別符號是為方法、變數或其他使用者定義項所定義的名稱。例如,對於常量、變數、函式、語句塊、類、專案等都需要一個名字,這些我們都統統稱為識別符號。識別符號可以有一個或多個字元,在 Java 語言中,識別符號的構成規則如下。

  • 識別符號由數字(09)和字母(AZ 和 a~z)、美元符號($)、下劃線(_)以及 Unicode 字符集中符號大於 0xC0 的所有符號組合構成(各符號之間沒有空格)。
  • 識別符號的第一個符號為字母、下劃線和美元符號,後面可以是任何字母、數字、美元符號或下劃線。

另外,Java 區分大小寫,因此 myvar 和 MyVar 是兩個不同的識別符號。

提示:識別符號命名時,切記不能以數字開頭,也不能使用任何 Java 關鍵字作為識別符號,而且不能賦予識別符號任何標準的方法名。

識別符號分為兩類,分別為關鍵字和使用者自定義識別符號。

  1. 關鍵字是有特殊含義的識別符號,如 true、false 表示邏輯的真假。
  2. 使用者自定義識別符號是由使用者按識別符號構成規則生成的非保留字的識別符號,如 abc 就是一個識別符號。

提示:使用識別符號時一定要注意,或者使用關鍵字,或者使用自定義的非關鍵字識別符號。此外,識別符號可以包含關鍵字,但不能與關鍵字重名。

例如以下合法與不合法識別符號。

  • 合法識別符號:date、$2011、date、D$date 等。
  • 不合法的識別符號:123.hw、2com、for、if 等。

命名規範(駝峰命名法)

  • 類名和介面名:每個單詞的首字母,其餘為小寫。(大駝峰)
  • 方法名:第二個單詞起的首字母為大寫,其餘全為小寫。(小駝峰)
  • 常量名:基本資料型別的常量名使用全部大寫字母,字與字之間用下劃線分隔。

識別符號用來命名常量、變數、類和類的物件等。因此,一個良好的程式設計習慣要求命名識別符號時,應賦予它一個有意義或有用途的名字。總的來說,就是見名知義。

關鍵字

abstract assert boolean break byte
case catch char class const
continue default do double else
for goto if implements import
instanceof int interface long native
new package private protected public
return strictfp short static supper
switch synchronized this throw throws
transient try void volatile while

關鍵字(或者保留字)是對編譯器有特殊意義的固定單詞,不能在程式中做其他目的使用。關鍵字具有專門的意義和用途,和自定義的識別符號不同,不能當作一般的識別符號來使用。

Java 的關鍵字對 Java 編譯器有特殊的意義,它們用來表示一種資料型別,或者表示程式的結構等。保留字是為 Java 預留的關鍵字,它們雖然現在沒有作為關鍵字,但在以後的升級版本中有可能作為關鍵字。

Java 語言目前定義了 51 個關鍵字,這些關鍵字不能作為變數名、類名和方法名來使用。以下對這些關鍵字進行了分類。

(1)用於資料型別

用於資料型別的關鍵字有 boolean、byte、char、 double、 float、int、long、new、short、void、instanceof。

(2)用於語句

用於語句的關鍵字有break、case、 catch、 continue、 default 、do、 else、 for、 if、return、switch、try、 while、 finally、 throw、this、 super。

(3)用於修飾

用於修飾的關鍵字有 abstract、final、native、private、 protected、public、static、synchronized、transient、 volatile。

(4)用於方法、類、介面、包和異常

用於方法、類、介面、包和異常的關鍵字有 class、 extends、 implements、interface、 package、import、throws。

還有些關鍵字,如 future、 generic、 operator、 outer、rest、var等都是Java保留的沒有意義的關鍵字。

另外,Java還有3個保留字:goto、const、null。它們不是關鍵字,而是文字。包含Java定義的值。和關鍵字一樣,它們也不可以作為識別符號使用。

注意:Java 的 null 不是關鍵字,類似於 true 和 false,它是一個字面常量,不允許作為識別符號使用。由於 Java 區分大小寫,因此 public 是關鍵字,而 Public 則不是關鍵字。但是為了程式的清晰及可讀性,要儘量避免使用關鍵字的其他形式來命名。

參考:Java識別符號和關鍵字詳解