| 
ドックレット API | ||||||||
| 前のパッケージ 次のパッケージ | フレームあり フレームなし | ||||||||
参照先:
          説明
| インタフェースの概要 | |
|---|---|
| AnnotationDesc | 注釈を表します。 | 
| AnnotationDesc.ElementValuePair | 注釈型の要素とその要素の値 (1 つ) との関連を表します。 | 
| AnnotationTypeDoc | 注釈型を表します。 | 
| AnnotationTypeElementDoc | 注釈型の要素を表します。 | 
| AnnotationValue | 注釈型の要素の値を表します。 | 
| ClassDoc | 特定の Java クラスまたはインタフェースを表し、クラス、クラスのコメントとタグ、およびクラスのメンバーに関する情報へのアクセスを提供します。 | 
| ConstructorDoc | 特定の Java クラスの特定のコンストラクタを表します。 | 
| Doc | コメントが付けられており、今回の javadoc の実行で処理された Java 言語構造要素 (パッケージ、クラス、コンストラクタ、メソッド、フィールド) を表します。 | 
| DocErrorReporter | エラー、警告、および通知の表示機能を提供するインタフェースです。 | 
| ExecutableMemberDoc | 特定の Java クラスの特定のメソッドまたはコンストラクタを表します。 | 
| FieldDoc | 特定の Java クラス内の特定のフィールドを表します。 | 
| MemberDoc | 特定の Java クラスの特定のメンバー (フィールド、コンストラクタ、メソッドのいずれか) を表します。 | 
| MethodDoc | 特定の Java クラスの特定のメソッドを表します。 | 
| PackageDoc | 特定の Java パッケージを表します。 | 
| Parameter | パラメータ情報 (パラメータの型と名前) です。 | 
| ParameterizedType | 総称クラスまたは総称インタフェースの呼び出しを表します。 | 
| ParamTag | 特定のドキュメンテーションタグ @param を表し、パラメータタグの名前の部分とコメントの部分を格納します。 | 
| ProgramElementDoc | Java プログラムの特定の要素 (クラス、インタフェース、フィールド、コンストラクタ、メソッドのいずれか) を表します。 | 
| RootDoc | javadoc の特定の実行に関するプログラム構造情報のルートを表します。 | 
| SeeTag | 関連するドキュメンテーションへのユーザー定義相互参照を表します。 | 
| SerialFieldTag | ObjectStreamField によって定義される Serializable フィールドのドキュメントを作成します。 | 
| SourcePosition | このインタフェースはソース位置を記述します。 | 
| Tag | 単純なドキュメンテーションタグ (@since、@author、@version など) を表します。 | 
| ThrowsTag | 特定のドキュメンテーションタグ @throws または @exception を表します。 | 
| Type | 特定の型を表します。 | 
| TypeVariable | 型変数を表します。 | 
| WildcardType | ワイルドカード型引数を表します。 | 
| クラスの概要 | |
|---|---|
| Doclet | この例は、ドックレットの起動クラスの例として、エントリポイントメソッドを示しています。 | 
| 列挙型の概要 | |
|---|---|
| LanguageVersion | Java プログラミング言語バージョン。 | 
ドックレット API (Javadoc API ともいう) は、ソースに埋め込まれた javadoc コメントを含む、プログラムとライブラリのソースレベルの構造を検証する機構をクライアントに提供します。ドックレット API は、ドキュメンテーション、プログラムチェック、自動コード生成、およびほかの多くのツールで役に立ちます。
ドックレットは javadoc により呼び出され、この API を使ってプログラム情報をファイルに書き出します。たとえば、標準的なドックレットはデフォルトで呼び出され、HTML ファイルにドキュメンテーションを書き出すことができます。
この呼び出しは、抽象 Doclet クラスにより定義されます。エントリポイントは、次の start メソッドです。
public static boolean start(RootDoc root)
RootDoc インスタンスは、プログラム構造情報のルートを保持します。このルートから、ほかのすべてのプログラム構造情報を取り出すことができます。  
-public、-protected、-package、および -private) を指定すると、プログラム要素がフィルタ処理され、「含まれる」セットまたは「ドキュメント化された」セットと呼ばれる結果セットが生成されます。フィルタ処理されていないセットも、allClasses(false) を通じて使用することができます。
 ClassDoc、allClasses()、findClass(String) で示されているように、この API では「クラス」という用語は通常「クラスまたはインタフェース」の略として使用されます。Doc.isClass() で示されているように、「インタフェースの対語としてのクラス」を意味することはまれです。2 つの目の意味では、この API は ordinary classes、enums、errors、および exceptions の 4 種類のクラスを呼び出します。この API では、各プログラム要素の詳細な説明で、どの意味が使われているかを明示的に示しています。
 修飾クラス名またはインタフェース名とは、パッケージ名が付加された名前です (java.lang.String など)。修飾されていない名前には、パッケージ名が含まれません (String など)。
@param タグ内の情報を表示するドックレットの例を次に示します。
import com.sun.javadoc.*;
public class ListParams extends Doclet {
public static boolean start(RootDoc root) {
ClassDoc[] classes = root.classes();
for (int i = 0; i < classes.length; ++i) {
ClassDoc cd = classes[i];
printMembers(cd.constructors());
printMembers(cd.methods());
        }
return true;
    }
static void printMembers(ExecutableMemberDoc[] mems) {
for (int i = 0; i < mems.length; ++i) {
ParamTag[] params = mems[i].paramTags();
System.out.println(mems[i].qualifiedName());
for (int j = 0; j < params.length; ++j) {
System.out.println("   " + params[j].parameterName()
+ " - " + params[j].parameterComment());
            }
        }
    }        
}
Javadoc API のインタフェースおよびメソッドは、赤色で示されています。Doclet は、ドックレットの呼び出しインタフェースを指定する abstract クラスです。Doclet には、クラス情報が保持されます。ExecutableMemberDoc は、MethodDoc および ConstructorDoc のスーパーインタフェースです。ParamTag には、@param タグから得た情報が保持されます。
コマンド行で次のように指定して、このドックレットを呼び出すとします。
javadoc -doclet ListParams -sourcepath <source-location> java.util次のような出力が生成されます。
    ...
java.util.ArrayList.add
index - index at which the specified element is to be inserted.
element - element to be inserted.
java.util.ArrayList.remove
index - the index of the element to removed.
    ...
@see com.sun.javadoc.RootDoc
  | 
ドックレット API | ||||||||
| 前のパッケージ 次のパッケージ | フレームあり フレームなし | ||||||||