@Exported
参照: 説明
| インタフェース | 説明 | 
|---|---|
| AnnotatedType | 
 注釈付きの型を表します。 
 | 
| 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 | 
 このインタフェースはソース位置を記述します。ソース位置は、ファイル名、行番号、列番号の3つから成ります。 
 | 
| Tag | 
 単純なドキュメンテーション・タグ(@since、@author、@versionなど)を表します。 
 | 
| ThrowsTag | 
 特定のドキュメンテーション・タグ@throwsまたは@exceptionを表します。 
 | 
| Type | 
 特定の型を表します。 
 | 
| TypeVariable | 
 型変数を表します。 
 | 
| WildcardType | 
 ワイルドカード型引数を表します。 
 | 
| クラス | 説明 | 
|---|---|
| Doclet | 
 この例は、ドックレットの起動クラスの例として、エントリポイント・メソッドを示しています。 
 | 
| 列挙型 | 説明 | 
|---|---|
| LanguageVersion | 
 Javaプログラミング言語バージョン。 
 | 
ドックレットは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は通常クラス、列挙型、エラー、および例外の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は、ドックレットの呼出しインタフェースを指定する抽象クラスです。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.
    ...
 バグまたは機能を送信
Java は米国ならびにその他の国における Oracle Corporation およびその関連企業の商標または登録商標です。
Copyright © 1993, 2014, Oracle and/or its affiliates. 500 Oracle Parkway
Redwood Shores, CA 94065 USA. All rights reserved.