java 平臺創建了一整套很好的命名慣例java
字面的慣例比較少:涉及包、類、接口、域、方法、類型變量等,儘可能不要違反這些慣例程序員
- api 違反了這些慣例,使用起來很困難
- 實現類違反了,很難以維護
一旦違反,會給其餘程序員帶來很大的困擾api
包:blog
- 包的名稱是層次狀的 com.em.tool.ds.controller
- 均小寫、以組織開頭
- java、javax 屬於例外(本身毫不要以這倆開頭)
- 包的組成部分簡短處理,好比使用util 而不是utility
- java 沒有提供包層次的支持,可是有些包仍是包含豐富的包層次
類和接口(包括枚舉和註解類型):接口
方法和域的名稱:get
常量域(惟一例外):域名
- 一個或多個純大寫字母,帶下劃線組成
- 常量域是靜態 final 域
- 枚舉類型是常量域
- 被引用類型不可變,也能夠是個常量域
- 常量域是惟一推薦使用下劃線的情形
局部變量(與成員名稱相似):it
類型參數:變量
- 單字母組成
- T 表明任意類型
- E 表明集合中的元素類型
- K、V 表明映射的鍵和值類型
- T、T一、T2 ...
語法命名規則比字面量更加靈活,更加爭議語法
- 包沒有語法命名慣例
- 類和接口使用單詞或短語(接口常加 able、ible表明一種能力)
- 方法:getter、setter、generate、size、toString、newInstance、isTable、hasTable 等等
- 域名,用名詞就好 height、baoyStyle 等等
好的命名習慣,大大加強了程序的可讀性,很是值得遵照