1. 程式人生 > >Java 之 註釋介紹

Java 之 註釋介紹

前言

之前有寫過一篇 Java 註解的介紹。 參考以上鍊接。

雖然註解、註釋只相差一個字,但是用法就差異很大。

總體一句話, 註解給編譯器看, 註釋是給人看的。

基於此的話, 對於一個方法來說:

1. 把這個方法的作用, 輸入,輸出描述清楚就可以了,更多的可以加上一些作者呀,版本呀這樣一些資訊

2. 註釋編排的美觀一些

做到這兩點應該就可以了。 舉個例子:

	/*******************************************************************************
	* NAME:			usage
	* DESCRIPTION:	XXX
	* ARGUMENTS:	N/A
	* RETURN:       
	* AUTHOR: 		oscar999
	* VERSION:      V0.1
	*******************************************************************************/

看上去這是一個不錯的註釋^^.

但是對於Java 語言來說, 註釋被賦予了更多的功能。 就是你可以使用javadoc 這個功能把程式碼中的註釋匯出到  html 的檔案中。

如果你的程式碼是共用性很高的程式碼的話, 這份文件就是一份API的參考文件, 類似Java API.

所以, 要產生出這樣的文件,就要遵循java 定義的一些註釋規範, 才能產生出規範的文件出來。

Java 類方法的標準註釋

還是從類的方法的註釋說起。

    /**
     * Read a line of text.  A line is considered to be terminated by any one
     * of a line feed ('\n'), a carriage return ('\r'), or a carriage return
     * followed immediately by a linefeed.
     *
     * @param      ignoreLF1  If true, the next '\n' will be skipped
     * @param      ignoreLF2  If true, the next '\n' will be skipped
 * * @return A String containing the contents of the line, not including * any line-termination characters, or null if the end of the * stream has been reached * * @see java.io.LineNumberReader#readLine() * * @exception IOException If an I/O error occurs */
(不去關注以上註釋的意義,只關注其定義的樣式)

1. 首先看最上面的 “Read a line of text.  A line .. ” 這一段是對這個方法的一些描述。

第一個句號前面的部分, 也就是 “Read a line of text.” 會出現在 “方法摘要” 中

全部的描述資訊 會出現在“ 方法詳細資訊” 中

2. @param 定義的是方法的輸入引數,(可以新增多個)出現在“ 方法詳細資訊” 中。(引數和引數描述之間使用空格隔開, 在產生的文件中轉成了  -)

3. @return  返回值的描述

4. @see  參考的描述

5. @exception 異常丟擲的描述

美觀考慮, 不同類的標籤可以換一行顯示, 比如 @param 和 @return 直接空一行。

Java 類標準註釋

類的註釋和方法註釋的格式基本相同。 區別的地方:

1. 放置的位置不同。 類的註釋放在類定義的上面, 方法的註釋放在方法定義的上面。

2. 類的註釋比較會使用   @version  @author  @since 這樣的標籤。

看模板

/** will buffer the input from the specified file.  Without buffering, each
* invocation of read() or readLine() could cause bytes to be read from the
* file, converted into characters, and then returned, which can be very
* inefficient. 
* 
* 
* Test Description
* 
* <p> Programs that use DataInputStreams for textual input can be localized by
* replacing each DataInputStream with an appropriate BufferedReader.
*
* @see FileReader
* @see InputStreamReader
*
* @version 	0.1, 11/20/13
* @author	oscar999
* @since	JDK1.5
*/

doc 中顯示的效果是:

同樣, 描述的第一句出現在“類概要”中。

類的詳細資訊顯示如下:

值得注意的是 description 中<p> 的使用。 如果沒有加<p> , 在java code 中不管是否有換行,產生的doc 中都不換行。 加上<p> 的話, doc 中出現換行。

補充

補充一下, 產生javadoc的方法:

1. 命名行方式:  javadoc  + 引數

2. 使用Eclipse IDE 匯出

如果在Eclipse IDE 中, 在原始檔或是專案上右鍵單擊 , 選 Export  --->

Java --> Javadoc 就可以產生了。