Java 语法规定之外的命名注释规范
Java 語法規定之外的命名注釋規范
- 命名規范
- 1. 項目名
- 2. 包名
- 3. 類名
- 4. 常量名
- 5. 變量名
- 6. 方法名
- 8. 其它命名技巧
- 9. 應當避免的行為
- 10. 經典的命名法
- 11. 常用命名詞匯
- 注釋規范
- 1. 類注釋
- 2.字段注釋
- 3.構造器注釋
- 4.方法注釋
- 5.方法內部注釋
命名規范
1. 項目名
項目名全部小寫,且不使用下劃線,含多個單詞時使用中劃線分隔。
2. 包名
包名全部小寫,且不使用下劃線,即便含多個單詞也不分隔。對于不同的項目,包名分為以下幾種:(此部分與域名類似,可參考域名規則)
-
公司項目:com.公司名.項目名.模塊名.具體分類
-
非盈利組織:org.組織名.項目名.模塊名.具體分類
-
團隊項目:team.團隊名.項目名.模塊名.具體分類
-
其它:
-
個人項目:表示個人的英語單詞有 individual、personal、private、one-man 等
-
indi:個體項目。指個人發起,但非自己獨自完成的項目,可公開或私有項目,版權主要屬于發起者。
包名規則:indi.發起者名.項目名.模塊名.具體分類
-
pers:個人項目。指個人發起,獨自完成,可分享的項目,版權主要屬于個人。
包名規則:pers.個人名.項目名.模塊名.具體分類
-
priv:私有項目。指個人發起,獨自完成,非公開的私人使用的項目,版權屬于個人。
包名規則:priv.個人名.項目名.模塊名.具體分類
-
onem:與 indi 相同
-
-
3. 類名
類名首字母大寫,如果類名由多個單詞組成,每個單詞的首字母都要大寫。如:
public class MainActivity extends AppCompatActivity { /* TODO */ }另外,類名最好為名詞,或者是以名詞結尾,而前綴為修飾該名詞的形容詞、動名詞。
4. 常量名
常量名全部大寫。如果名稱由多個單詞組成,則這些單詞之間使用下劃線隔開。如:
public static final int MAX_LENGTH = 100;5. 變量名
變量名的首字母小寫。如果名稱由多個單詞組成,則從第二個單詞開始,每個單詞的首字母都要大寫。如:
private boolean upPressed;對于泛型形參,其遵循類名的規則。
另外,在定義泛型類型形參時,其習慣的象征意義為:
-
E:表示集合的元素類型
-
K、V:分別表示集合中鍵和值的類型
-
T、U、S:均表示任意類型
6. 方法名
變量名的首字母小寫。如果名稱由多個單詞組成,則從第二個單詞開始,每個單詞的首字母都要大寫。 如:
public void setName(String aName) { this.name = aName; }對于不同領域的方法,其附加的規則為:
-
Service / DAO 層方法命名規則:
-
字段初始化的方法用 set 做前綴。
-
插入的方法用 save 或 insert 做前綴。
-
獲取單個對象的方法用 get 做前綴。
-
獲取多個對象的方法用 list 做前綴。
-
修改的方法用 update 做前綴。
-
刪除的方法用 remove 或 delete 做前綴。
-
獲取統計值的方法用 count 做前綴。
-
-
領域模型命名規則:
-
數據對象: xxxDO。 其中xxx 為數據表名。
-
數據傳輸對象: xxxDTO。 其中 xxx 為業務領域相關的名稱。
-
展示對象: xxxVO, xxx 為網頁名稱。
注意: POJO 是 DO 、 DTO、 BO 、VO 的統稱,所以不要命名成 xxxPOJO 。
-
8. 其它命名技巧
-
直接使用類型名命名。如:
View view; -
在變量名前面加上一些前綴。如:a
附: 在 C++ 中,往往喜歡使用前綴 m,x,下劃線_,Java 程序員通常不這么做
Box aBox; -
使用諧音簡化。如使用數字2來替代單詞to,使用數字4來替代單詞for。
在這種情況下,數字本身也能起到分隔字母的作用,因此這種技巧能替代使用大寫字母進行分隔,但數字諧音不能充當后綴。
9. 應當避免的行為
-
使用單個英文小寫字母作為名稱。如:i,j,k,a
-
使用簡單泛化意義的數字作為后綴。如:1、2、…
-
類方法形參變量的名稱和類字段相同
-
使用英文以外的人類文字。如:使用中文、漢語拼音
10. 經典的命名法
-
下劃線命名法:
單詞與單詞之間通過下劃線分隔。
-
駝峰式命名法(小駝峰式命名法):
第一個單詞首字母小寫,后面的單詞首字母大寫,其它字母均小寫。
-
帕斯卡命名法(大駝峰式命名法):
每個單詞的第一個字母都大寫,其它字母均小寫。
-
匈牙利命名法:
開頭字母用變量類型的縮寫,這一部分全部用小寫。其余部分用變量的英文或英文的縮寫,這一部分的大小寫遵循帕斯卡命名法。
11. 常用命名詞匯
-
筆者常用的匈牙利縮寫命名如下表:
縮寫全稱意義 ptr pointer 指針 src source 來源 rsp response 響應 impl implement 實現 - - - msg message 信息 img image 圖像 - - - btn button 按鈕 dlg dialog 對話框 - - - fx framework 框架 -
筆者常用的前綴縮寫如下表:
縮寫全稱意義 opt option 選擇 info information 信息 req request 請求 -
普通的匈牙利命名如下表:
縮寫意義 a 數組(Array) b 布爾值(Boolean) by 字節(BYte) c 有符號字符(Char) cb 無符號字符(Char Byte) cr 顏色參考值(Color Reference) cx、cy 坐標差(坐標:Coordinate) dw 雙字節(Double Word) fn 函數(FuNction) h 句柄(Handle) i 整型(Int) l 長整型(Long int) lp 長指針(Long Pointer) m 類成員(class Member) n 短整型(Number) np 近程指針(Near Pointer) p 指針(Pointer) s 字符串(String) sz 以 null 結尾的字符串(String with Zero end) w 字(Word) -
多用于包名或類名
意義拼寫位置 抽象 Abstract、Base 前綴 枚舉 Enum 后綴 接口實現 Impl 后綴 異常 Exception 后綴 工具 Utils 后綴 測試 Test 后綴 處理器 / 校驗器 Handler / Validator - 斷言 Predicate - 包裝類 Wrapper 后綴 意義(領域模型系列)拼寫(后綴) - DO - DTO - VO - DAO 意義(設計模式系列)拼寫(后綴) - Builder - Factory 意義(MVC系列)拼寫(后綴) 控制器 Controller 服務 Service 數據訪問對象 DAO
注釋規范
1. 類注釋
類注釋在每個類的前面添加。注釋模板如下:
/*** Copyright (C), 2020-202X, Company name info. Co., Ltd.* FileName: Test.java* 類的詳細說明** @author 類創建者姓名* @Date 創建日期* @version 版本號*/2.字段注釋
字段注釋在每個字段的前面添加。注釋模板如下:
/** 這是為了保證軟件開始界面的提示信息只提示一次 */private static int startMessageCounter = 0;3.構造器注釋
構造器注釋在每個構造器方法的前面添加。注釋模板如下:
/*** 構造方法的詳細使用說明** @param 參數1 參數1的使用說明* @throws 異常類型.錯誤代碼 注明從此類方法中拋出異常的說明*/4.方法注釋
方法注釋在每個方法的前面添加。注釋模板如下:
/*** 類方法的詳細使用說明** @param 參數1 參數1的使用說明* @return 返回結果的說明* @throws 異常類型.錯誤代碼 注明從此類方法中拋出異常的說明*/5.方法內部注釋
方法內部注釋添加在所需要注釋的代碼前面,可使用一行或多行。如:
// 創建Spring容器var ctx = new ClassPathXmlApplicationContext("spring-config.xml");總結
以上是生活随笔為你收集整理的Java 语法规定之外的命名注释规范的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 二叉树-层次遍历
- 下一篇: 解决GitHub中头像显示异常、设置不了