java開發規範總結_代碼注釋規範

來源:互聯網
上載者:User

標籤:

規範需要平時編碼過程中注意,是一個慢慢養成的好習慣

1.基本規則

   1.注釋應該使代碼更加清晰易懂
   2.注釋要簡單明了,只要提供能夠明確理解程式所必要的資訊就可以了。如果注釋太複雜說明程式需要修改調整,使設計更加合理。
   3.注釋不僅描述程式做了什麼, 還要描述為什麼要這樣做,以及約束
   4.對於一般的getter、setter方法不用注釋
   5.注釋不能嵌套
   6.產生開發文檔的需要用中文編寫

2.三種注釋方式說明

   1.文檔注釋 /** */

      可以對用多行,一般用來對類、介面、成員方法、成員變數、靜態欄位、靜態方法、常量進行說明。Javadoc可以用它來產生代碼的文檔。為了可讀性,可以有縮排和格式控制。
      文檔注釋常採用一些標籤進行文檔的特定用途描述,用於協助Javadoc產生文檔,常用的有:

標籤

Used for

目的

@author name

類/介面

描述代碼的作者,每個作者對應一個這樣的標籤

@deprecated

成員方法

說明該段API已經被廢除

@exception name description

  或

  @throws name description

成員方法

描述方法拋出的異常

每個異常一個對應一個這樣的標籤

@param name description

成員方法

描述成員方法中的參數用途和意義,一個參數對應一個這樣的標籤

@return description

成員方法

描述成員方法的傳回值的意義

@since

類/介面

成員方法

描述該段API開始的時間

@see ClassName

類/介面

成員方法

成員變數

用於引用特定的類描述,一般ClassName用包括包名的全名

@see ClassName#memberfunction

類/介面

成員方法

成員變數

用於引用特定的類的成員方法的描述,一般ClassName用包括包名的全名

@version text

類/介面

版本

@inheritDoc

類/介面

成員方法

繼承的文檔

   

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

   

 

 

 

   2.行注釋 //

      一次只能注釋一行,一般用來簡短的描述某一個局部變數,程式塊的作用

   3.塊注釋: /* */

      在代碼中禁止使用

   4.類/介面注釋

       類/介面描述,一般比較詳細。按照常用的說明順序排列,主要包括
          1.類的主要說明,以。或.結束
          2.類設計的目標,完成什麼樣的功能
          3.<Strong>主要的類使用</Strong>如何使用該類, 包括環境要求,如是否安全執行緒,並發性要求, 以及使用約束
          4.<Strong>已知的BUG</Strong>
          5.描述類的修改曆史:<Strong>修改人+日期+簡單說明</Strong>
          [email protected]作者、@version版本, @see參照,@since開始版本等資訊如:

/** * This class provides default implementations for the JFC <code>Action</code>  * interface. Standard behaviors like the get and set methods for * <code>Action</code> object properties (icon, text, and enabled) are defined * here. The developer need only subclass this abstract class and * define the <code>actionPerformed</code> method.  * <p> * <strong>Warning:</strong> * Serialized objects of this class will not be compatible with  * future Swing releases.  The current serialization support is appropriate * for short term storage or RMI between applications running the same * version of Swing.  A future release of Swing will provide support for * long term persistence. * * @version 1.41 2015/05/26 * @author xxxxx * @see Action */

      為了使形成的文檔可讀性好,注釋中經常帶有縮排和格式控制。類描述放在類的類定義的緊前面,不能有任何的空行。

3.變數注釋

     1.成員變數、類靜態變數採用文檔注釋,對成員變數的注釋通常包括:
        1)變數的意義
        2)變數的合法範圍
        3)對並發訪問的限制
         如:

 /*** Web.xml檔案中configServlet參數的UIAPP.xml initparam */    public final static String APP_CONFIG = "aaa.uiapp";

    2.局部變數,如演算法相關的變數採用塊或行注釋

public void  func() {    int i; //用於迴圈計數    …………}

   3.參數變數注釋一般用文檔注釋,並且用@param來說明為參數,一般包括

       1) 參數的用途

       2) 對參數值範圍的要求

4.方法注釋

   描述函數的功能,對成員方法,靜態方法一般採用文檔描述,特別是公開的方法。注釋可以很詳細,為了可讀性強也可包含格式控制,如下面說明含有縮排:

/*** Here is a method comment with some very special* formatting that I want indent(1) to ignore.**/

    方法注釋一般包括:
        1.方法的主要說明,以。或.結束
        2.描述方法完成什麼樣的功能,方法的目標,用該方法的原因
        3.描述方法的使用方法,包括使用的環境要求,如前置條件,後置條件和並發性要求
        4.描述已知的bug
        5.描述方法的修改曆史:<Strong>修改人+日期+簡單說明</Strong> (<修改人+日期+簡單說明>)
        [email protected] c elements to be inserted into this list.(參數說明)
        [email protected] <tt>true</tt> if this list changed as a result of the call.(傳回值說明)
        [email protected] NullPointerException if the specified Collection is null.(異常說明)
        [email protected]如果重載方法必須參考父類的方法
       10Eclips下採用Alt+Shift+J產生Javadoc說明方法的放回值((@return)

5.修改記錄

    1.在修改一個類前,必須先從SVN中update,之後再進行修改;
    2.修改的地方必須加入注釋,說明修改人,修改原因,修改內容,修改時間;

 

java開發規範總結_代碼注釋規範

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.