Java 快速導覽 - 識別字

識別字 (identifier) 為程式語言中依程式需求自行定義的名稱,舉凡程式中所用的類別名稱、屬性名稱、方法名稱、變數名稱等都屬於識別字, API 其內所用的名稱也屬於識別字。另外,每一種第三方 library (third-party library) 都有各自的習慣命名方式,自行定義名稱時應該避免與 library 中的名稱衝突。



Java 定義識別字可用任何 Unicode 符號,因此中文字、日文平假名片假名等都可用為識別字名稱,長度不限,但是習慣上仍是以英文二十六的大小寫字母為主,另加上數字、底線符號及 dollar sign ,如下
_$
abcdefghijklm
nopqrstuvwxyz
ABCDEFGHIJKLM
NOPQRSTUVWXYZ
0123456789


通常識別字會由具有意義的英文單字組成,因此會由字母開始,而非數字 (0-9) 、底線符號 (_) 或 dollar sign ($) ,至於單字數量依需要而定。如果單一識別字利用超過一個英文單字組成,各單字之間不可有空格,因為空格會讓編譯器認為是前後分別是兩個不同的識別字。識別字也不可與關鍵字的名稱相同。


注意,任何識別字都不能用數字 (0-9) 開頭,也就是不能拿數字作為識別字的第一個字元,因為數字會先被當成 literal 處理。識別字的第二個字元後就沒有限制,可以用數字或是任何 Unicode 符號。


注意,英文字母中大寫與小寫是不同的,例如 A 與 a 會被當成兩個不同的識別名稱。


連接多英文單字組合的識別字,可用底線符號 (_) ,或是大寫駝峰型 (upper camel case) 或是小寫駝峰型 (lower camel case) 。大寫駝峰型如
SimpleGame
MyStory
ThreadTestDrive
RunThreads
TextArea
ButtonOne
MidiEvent
ShortMessage
MyObject
BExample


小寫駝峰型如
actionPerformed
setUpNetworking
doSomething
getField
getTitle
makeEvent
turnOvenOn
takeRisk
printList
myCanvas


若是只使用一個英文單字,下面是全部用小寫字母的例子
clone
equals
i
obj1
move
paint
run
play
sleep
name
color


首字母大寫的例子
Zoo
Animal
Bird
Day
Outter
Producer
Server
Data
Filename
Example


或全部的字母都大寫,如用在常數 (constant)
START
END
RIGHT
BEGIN


自行命名的識別字名稱應統一格式,一般來說,類別名稱通常會用多單字組合成的大寫駝峰型,成員用某一英文單字的小寫或多單字組合成的小寫駝峰型。


另外,方法的第一個英文單字通常會用動詞,屬性則用名詞。方法內常需要使用區域變數 (local variable) ,比較常用小寫英文單字,或是小寫駝峰型。


識別字名稱所採取的英文單字最好跟用途有關,因為這樣才容易辨識該識別字的用途,後續維護或與團隊間溝通也才比較方便。


中英文術語對照
識別字identifier
第三方 librarythird-party library
dollar signdollar sign
literalliteral
大寫駝峰型upper camel case
小寫駝峰型lower camel case
常數constant
區域變數local variable








沒有留言: