Java文檔注釋超詳細(xì)講解
Java只是三種注釋方式。前兩種分別是// 和/* */,第三種被稱作說(shuō)明注釋,它以/** 開(kāi)始,以 */結(jié)束。
說(shuō)明注釋允許你在程序中嵌入關(guān)于程序的信息。你可以使用javadoc工具軟件來(lái)生成信息,并輸出到HTML文件中。
說(shuō)明注釋,是你更加方面的記錄你的程序的信息。
javadoc 標(biāo)簽
javadoc工具軟件識(shí)別以下標(biāo)簽:
| 標(biāo)簽 | 描述 | 示例 |
|---|---|---|
| @author | 標(biāo)識(shí)一個(gè)類的作者 | @author description |
| @deprecated | 指名一個(gè)過(guò)期的類或成員 | @deprecated description |
| {@docRoot} | 指明當(dāng)前文檔根目錄的路徑 | Directory Path |
| @exception | 標(biāo)志一個(gè)類拋出的異常 | @exception exception-name explanation |
| {@inheritDoc} | 從直接父類繼承的注釋 | Inherits a comment from the immediate surperclass. |
| {@link} | 插入一個(gè)到另一個(gè)主題的鏈接 | {@link name text} |
| {@linkplain} | 插入一個(gè)到另一個(gè)主題的鏈接,但是該鏈接顯示純文本字體 | Inserts an in-line link to another topic. |
| @param | 說(shuō)明一個(gè)方法的參數(shù) | @param parameter-name explanation |
| @return | 說(shuō)明返回值類型 | @return explanation |
| @see | 指定一個(gè)到另一個(gè)主題的鏈接 | @see anchor |
| @serial | 說(shuō)明一個(gè)序列化屬性 | @serial description |
| @serialData | 說(shuō)明通過(guò)writeObject( ) 和 writeExternal( )方法寫(xiě)的數(shù)據(jù) | @serialData description |
| @serialField | 說(shuō)明一個(gè)ObjectStreamField組件 | @serialField name type description |
| @since | 標(biāo)記當(dāng)引入一個(gè)特定的變化時(shí) | @since release |
| @throws | 和 @exception標(biāo)簽一樣. | The @throws tag has the same meaning as the @exception tag. |
| {@value} | 顯示常量的值,該常量必須是static屬性。 | Displays the value of a constant, which must be a static field. |
| @version | 指定類的版本 | @version info |
文檔注釋
在開(kāi)始的/**之后,第一行或幾行是關(guān)于類、變量和方法的主要描述.
之后,你可以包含一個(gè)或多個(gè)何種各樣的@標(biāo)簽。每一個(gè)@標(biāo)簽必須在一個(gè)新行的開(kāi)始或者在一行的開(kāi)始緊跟星號(hào)(*).
多個(gè)相同類型的標(biāo)簽應(yīng)該放成一組。例如,如果你有三個(gè)@see標(biāo)簽,可以將它們一個(gè)接一個(gè)的放在一起。
下面是一個(gè)類的說(shuō)明注釋的示例:
/*** This class draws a bar chart. * @author Zara Ali * @version 1.2 */
javadoc輸出什么
javadoc工具將你Java程序的源代碼作為輸入,輸出一些包含你程序注釋的HTML文件。
每一個(gè)類的信息將在獨(dú)自的HTML文件里。javadoc也可以輸出繼承的樹(shù)形結(jié)構(gòu)和索引。
由于javadoc的實(shí)現(xiàn)不同,工作也可能不同,你需要檢查你的Java開(kāi)發(fā)系統(tǒng)的版本等細(xì)節(jié),選擇合適的Javadoc版本。
實(shí)例
下面是一個(gè)使用說(shuō)明注釋的簡(jiǎn)單實(shí)例。注意每一個(gè)注釋都在它描述的項(xiàng)目的前面。
在經(jīng)過(guò)javadoc處理之后,SquareNum類的注釋將在SquareNum.html中找到。
import java.io.*;
/**
* This class demonstrates documentation comments.
* @author Ayan Amhed
* @version 1.2
*/
public class SquareNum {
/**
* This method returns the square of num.
* This is a multiline description. You can use
* as many lines as you like.
* @param num The value to be squared.
* @return num squared.
*/
public double square(double num) {
return num * num;
}
/**
* This method inputs a number from the user.
* @return The value input as a double.
* @exception IOException On input error.
* @see IOException
*/
public double getNumber() throws IOException {
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader inData = new BufferedReader(isr);
String str;
str = inData.readLine();
return (new Double(str)).doubleValue();
}
/**
* This method demonstrates square().
* @param args Unused.
* @return Nothing.
* @exception IOException On input error.
* @see IOException
*/
public static void main(String args[]) throws IOException
{
SquareNum ob = new SquareNum();
double val;
System.out.println("Enter value to be squared: ");
val = ob.getNumber();
val = ob.square(val);
System.out.println("Squared value is " + val);
}
}如下,使用javadoc工具處理SquareNum.java文件:
$ javadoc SquareNum.java
Loading source file SquareNum.java...
Constructing Javadoc information...
Standard Doclet version 1.5.0_13
Building tree for all the packages and classes...
Generating SquareNum.html...
SquareNum.java:39: warning - @return tag cannot be used\
in method with void return type.
Generating package-frame.html...
Generating package-summary.html...
Generating package-tree.html...
Generating constant-values.html...
Building index for all the packages and classes...
Generating overview-tree.html...
Generating index-all.html...
Generating deprecated-list.html...
Building index for all classes...
Generating allclasses-frame.html...
Generating allclasses-noframe.html...
Generating index.html...
Generating help-doc.html...
Generating stylesheet.css...
1 warning
$總結(jié)
到此這篇關(guān)于Java文檔注釋的文章就介紹到這了,更多相關(guān)Java文檔注釋內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java實(shí)現(xiàn)Twitter的分布式自增ID算法snowflake
這篇文章主要介紹了Java實(shí)現(xiàn)Twitter的分布式自增ID算法snowflake,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Java 8 對(duì) ArrayList 元素進(jìn)行排序的操作方法
Java8提供了多種方式對(duì)ArrayList元素進(jìn)行排序,包括使用Collections.sort()方法、Collections.reverseOrder()實(shí)現(xiàn)降序排序、使用Lambda表達(dá)式進(jìn)行自定義排序、使用StreamAPI對(duì)ArrayList進(jìn)行排序及按對(duì)象屬性排序,本文通過(guò)示例代碼介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-11-11
SpringMVC如何獲取表單數(shù)據(jù)(radio和checkbox)
這篇文章主要介紹了SpringMVC如何獲取表單數(shù)據(jù)(radio和checkbox)的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07
springboot啟動(dòng)feign項(xiàng)目報(bào)錯(cuò):Service id not legal hostnam的解決
這篇文章主要介紹了springboot啟動(dòng)feign項(xiàng)目報(bào)錯(cuò):Service id not legal hostnam的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-08-08
Java之InputStreamReader類的實(shí)現(xiàn)
這篇文章主要介紹了Java之InputStreamReader類的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11

