首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Java 文檔註解完整指南:Javadoc 標籤、輸出 HTML、實務範例與常見標籤表

     編輯:Java 程式設計入門

Java 文檔註解(Javadoc)完整指南

Java 提供三種註解://、/* */ 以及文檔註解(以 /** 開頭、*/ 結束)。文檔註解允許在程式碼中嵌入程式資訊,透過 javadoc 工具產出 HTML 文檔。


Javadoc 標籤完整參考表

標籤描述範例
@author類別作者@author description
@deprecated標記過期類別或成員@deprecated description
{@docRoot}當前文檔根目錄路徑Directory Path
@exception類別拋出的異常@exception exception-name explanation
{@inheritDoc}繼承自父類的註解Inherits a comment...
{@link}插入連結到其他主題{@link name text}
{@linkplain}插入連結(純文字字型)Inserts an in-line link...
@param方法參數說明@param parameter-name explanation
@return回傳值說明@return explanation
@see參考連結@see anchor
@serial序列化屬性說明@serial description
@serialDatawriteObject/writeExternal 寫入資料@serialData description
@serialFieldObjectStreamField 元件@serialField name type description
@since引入變更的版本@since release
@throws同 @exceptionThe @throws tag...
{@value}顯示常數值(需為 static)Displays the value...
@version類別版本@version info

文檔註解結構

  • 以 /** 開頭,首行為類別/變數/方法的主要描述
  • 其後可包含一或多個 @ 標籤,每個標籤佔一行(或緊接 * 開頭)
  • 相同類型標籤應集中放置(如多個 @see 連續排列)

類別文檔註解範例

/**
 * 這個類別繪製長條圖
 * @author runoob
 * @version 1.2
 */

Javadoc 輸出內容

  • 每個類別產生獨立 HTML 檔案
  • 輸出繼承樹狀結構與索引
  • 實作細節視開發系統版本而異,需選擇對應 Javadoc 版本

完整實務範例:SquareNum.java

原始碼

import java.io.*;

/**
 * 這個類別示範文檔註解
 * @author Ayan Amhed
 * @version 1.2
 */
public class SquareNum {
    /**
     * 回傳 num 的平方
     * @param num 要平方的值
     * @return num 的平方
     */
    public double square(double num) {
        return num * num;
    }

    /**
     * 從使用者輸入取得數字
     * @return 輸入的 double 值
     * @exception IOException 輸入錯誤
     * @see IOException
     */
    public double getNumber() throws IOException {
        InputStreamReader isr = new InputStreamReader(System.in);
        BufferedReader inData = new BufferedReader(isr);
        String str = inData.readLine();
        return (new Double(str)).doubleValue();
    }

    /**
     * 示範 square() 方法
     * @param args 未使用
     * @return 無
     * @exception IOException 輸入錯誤
     * @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 指令與輸出

$ 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
$

最佳實務建議

  • 所有 public 類別、介面、方法、欄位皆應撰寫文檔註解
  • 使用 {@link} 連結相關類別與方法
  • 建置流程中整合 javadoc 自動產出 API 文檔
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved