JAVA基礎學習_命名規範和註釋

1、命名規範html

 

一、 項目名所有小寫java

二、 包名統一使用小寫,點分隔符之間有且僅有一個天然語義的英語單詞,包名統一使用單數形式。若是類名有複數含義,類名可使用複數形式。app

實際應用中:框架

  各層命名規約:
  A) Service / DAO 層方法命名規約
    1 ) 獲取單個對象的方法用 get 作前綴。
    2 ) 獲取多個對象的方法用 list 作前綴。
    3 ) 獲取統計值的方法用 count 作前綴。
    4 ) 插入的方法用 save( 推薦 ) 或 insert 作前綴。
    5 ) 刪除的方法用 remove( 推薦 ) 或 delete 作前綴。
    6 ) 修改的方法用 update 作前綴。
  B) 領域模型命名規約
    1 ) 數據對象: xxxDO , xxx 即爲數據表名。
    2 ) 數據傳輸對象: xxxDTO , xxx 爲業務領域相關的名稱。
    3 ) 展現對象: xxxVO , xxx 通常爲網頁名稱。
    4 ) POJO 是 DO / DTO / BO / VO 的統稱,禁止命名成 xxxPOJO 。函數

三、 類名首字母大寫,若是類名由多個單詞組成,每一個單詞的首字母都要大寫,必須聽從駝峯形式測試

如:public class MyFirstClass{}this

  抽象類命名使用 Abstract 或 Base 開頭 ; 異常類命名使用 Exception 結尾 ; 測試類命名以它要測試的類的名稱開始,以 Test 結尾。spa

對於 Service 和 DAO 類,基於 SOA 的理念,暴露出來的服務必定是接口,內部的實現類用 Impl 的後綴與接口區別。.net

推薦實體類沒有後綴名。code

POJO 類中布爾類型的變量,都不要加 is ,不然部分框架解析會引發序列化錯誤。

四、 變量名、方法名首字母小寫,若是名稱由多個單詞組成,每一個單詞的首字母都要大寫。

如:int index=0;

       public void toString(){}

五、常量命名所有大寫,單詞間用下劃線隔開,力求語義表達完整清楚,不要嫌名字長。 例如:MAX_NAME_LENGTH

六、全部命名規則必須遵循如下規則:

1)、名稱只能由字母、數字、下劃線、$符號組成

2)、不能以數字開頭

3)、名稱不能使用JAVA中的關鍵字。

4)、堅定不容許出現中文及拼音命名。

七、源文件名:源文件名必須和類名相同。當保存文件的時候,你應該使用類名做爲文件名保存(切記Java是大小寫敏感的),文件名的後綴爲.java。
(若是文件名和類名不相同則會致使編譯錯誤)。
主方法入口:全部的Java 程序由public static void main(String []args)方法開始執行。

2、註釋規範

Java除了能夠採用咱們常見的註釋方式(//、/* */)以外,Java語言規範還定義了一種特殊的註釋,也就是咱們所說的Javadoc註釋,以/**開頭,而以*/結束, Javadoc 註釋能夠被自動轉爲在線文檔,省去了單獨編寫程序文檔的麻煩。 推薦使用。

Javadoc註釋主要涉及範圍:類、屬性、方法:

一、   類註釋

在每一個類前面必須加上類註釋,註釋模板以下:

/**

* Copyright (C), 2006-2010, ChengDu Lovo info. Co., Ltd.

* FileName: Test.java

* 類的詳細說明

*

* @author 類建立者姓名
    * @Date    建立日期

* @version 1.00

*/

 

二、   屬性註釋

在每一個屬性前面必須加上屬性註釋,註釋模板以下:

/** 提示信息 */

private String strMsg = null;

 

三、   方法註釋

在每一個方法前面必須加上方法註釋,註釋模板以下:

/**

* 類方法的詳細使用說明

*

* @param 參數1 參數1的使用說明

* @return 返回結果的說明

* @throws 異常類型.錯誤代碼 註明今後類方法中拋出異常的說明

*/

四、   構造方法註釋

在每一個構造方法前面必須加上註釋,註釋模板以下:

/**

* 構造方法的詳細使用說明

*

* @param 參數1 參數1的使用說明

* @throws 異常類型.錯誤代碼 註明今後類方法中拋出異常的說明

*/

 

五、   方法內部註釋

在方法內部使用單行或者多行註釋,該註釋根據實際狀況添加。

如://背景顏色

       Color bgColor = Color.RED

 

 1 import java.net.InetAddress;
 2 import java.util.Arrays;
 3 /**
 4  * 該類的總體性描述。
 5  *
 6  * @author 做者
 7  * @version 1.0, 05/22/07
 8  * @since 1.0
 9  */
10 public class ChannelBinding {
11 /**
12  * 對該變量的備註信息
13  */
14 private InetAddress initiator;
15 /**
16  * 對該變量的備註信息
17  */
18 private InetAddress acceptor;
19 /**
20  * 對該變量的備註信息
21  */
22     private  byte[] appData;
23    
24     /**
25      * 對該類的構造函數的備註信息。
26      *
27      * @param initAddr 對參數的備註。
28      * @param acceptAddr對參數的備註。
29      * @param appData對參數的備註。
30      */
31     public ChannelBinding(InetAddress initAddr, InetAddress acceptAddr,
32               byte[] appData) {
33          initiator = initAddr;
34          acceptor = acceptAddr;
35          if (appData != null) {
36               this.appData = new byte[appData.length];
37               java.lang.System.arraycopy(appData, 0, this.appData, 0,
38                    appData.length);
39          }
40     }
41   
42     /**
43      * 對該類的具體一函數的備註信息
44      *
45      * @param obj 參數的備註信息
46      * @return 返回值的備註信息
47      */
48     public boolean equals(Object obj) {
49          if (this == obj)
50               return true;
51          if (! (obj instanceof ChannelBinding))
52               return false;
53          ChannelBinding cb = (ChannelBinding) obj;
54          return Arrays.equals(appData, cb.appData);
55     }
56 }

 

摘抄至:https://www.cnblogs.com/FocusIN/p/5811189.html

https://www.cnblogs.com/zshibo/p/8007123.html

相關文章
相關標籤/搜索