驼峰法则:
将所有字母都小写(包括缩写),然后将单词的第一个字母大写。
每个单词的第一个字母都大写,来得到大驼峰式命名。
除了第一个单词,每个单词的第一个字母都大写,来得到(小)驼峰式命名。
为避免歧义,文中小驼峰法统称为驼峰法,大驼峰/帕斯卡法统称为大驼峰法则。
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 |
参考:
Google Java Style Guide https://google.github.io/styleguide/javaguide.html