Java命名規範
駝峯法則:
將所有字母都小寫(包括縮寫),然後將單詞的第一個字母大寫。
每個單詞的第一個字母都大寫,來得到大駝峯式命名。
除了第一個單詞,每個單詞的第一個字母都大寫,來得到(小)駝峯式命名。
爲避免歧義,文中小駝峯法統稱爲駝峯法,大駝峯/帕斯卡法統稱爲大駝峯法則。
1. Package
項目包命名規則:<域名反轉>.<團隊名>.<項目名>。相關項目可使用<域名反轉>.<團隊名>.<父項目名>.<子項目名>的命名法則。
命名必須全部使用英文小寫字母,禁止使用“下劃線”等字符。(除常量外,Java命名習慣中均不推薦使用下劃線等字符)
示例:
com.cnblogs.niceboat.soyteam.anticorruptionsystem
2. Class/Object、Interface
類和接口使用大駝峯命名法
抽象類使用“Abstract”做爲類命名的開頭
Exception類命名使用“Exception”做爲類命名的結尾
Test類使用“Test”做爲類命名的結尾
在面向接口編程中,接口的實現類的命名規則爲:<接口名>+"Impl"。禁止使用匈牙利命名法。
示例(正確):
接口 |
實現類 |
HandsomeProvider |
HandsomeProviderImpl |
匈牙利命名法(不推薦):
接口 |
實現類 |
IHandsomeProvider |
HandsomeProvider |
3. Method/Function
方法的命名使用駝峯法,一般使用動詞或動詞+名詞組合。
設置/獲取某個值的方法,命名爲setV/getV
返回長度的方法,命名爲length
判斷布爾值的方法,命名爲isV
將對象轉換爲某個特定類型的方法應該命名爲toT
示例:
getSecretStage() |
length() |
isEmpty() |
toSpecialFormat() |
4. Variable
變量的命名使用駝峯法
示例:
OpenId
常量命名使用大寫字母並用下劃線分割
示例:
MAX_SUITABLE_SIZE
關於駝峯法則的具體命名規範(尤其是涉及到單詞縮寫),參見此表:
原文 | 駝峯法則 | 大駝峯法則 | 不推薦 |
XML HTTP request | xmlHttpRequest | XmlHttpRequest | XMLHTTPRequest |
new customer ID | newCustomerId | NewCustomerId | newCustomerID |
inner stopwatch | innerStopwatch | InnerStopwatch | innerStopWatch |
support IPv6 on iOS | supportIpv6OnIos | SupportIpv6OnIos | supportIPv6OniOS |
Anglo-Saxon England | angloSaxonEngland | AngloSaxonEngland | Anglo-SaxonEngland |