English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Javaは3種類のコメント方法をサポートしています。そのうちの2つは以下の通りです。 // および /* */、第三種は説明注釈と呼ばれ、以下のように /** 始まり、以 */结束。
说明注释允许你在程序中嵌入关于程序的信息。你可以使用 javadoc 工具软件来生成信息,并输出到HTML文件中。
说明注释,使你更加方便的记录你的程序信息。
javadoc 工具软件识别以下标签:
标签 | 終了。 | 説明コメントは、プログラムに情報を埋め込むことができます。javadocツールソフトウェアを使用して情報を生成し、HTMLファイルに输出できます。 |
---|---|---|
説明コメントを記録しやすくします。 | javadocタグ | javadocツールソフトウェアが以下のタグを認識します: |
タグ | 説明 | 例 |
@author | クラスの作者を識別します。 | @deprecated |
廃止されたクラスやメンバーを指名します。 | 過去の説明 | {@docRoot}-@param |
現在のドキュメントのルートディレクトリのパスを指明します。 | ディレクトリパス | @exception |
exceptionを発生させるクラスを標識します。 | {@inheritDoc} | 直接の上位クラスからコメントを継承します。 |
直接の上位クラスからコメントを継承します。 | {@link} | 他のトピックへのリンクを挿入します。-{@link name text} |
{@linkplain} | 他のトピックへのリンクを挿入しますが、リンクはテキストフォントのみを表示します。 | 行リンクを他のトピックに-@param |
メソッドの引数を説明します。 | @param parameter | name explanation |
@see | @return | 返却値の型を説明します。 |
@return explanation | 他のトピックへのリンクを指定します。 | @serial |
シリアライズ属性を説明します。 | @serialData | writeObject()とwriteExternal()メソッドで書かれたデータを説明します。 |
@serialField | ObjectStreamFieldコンポーネントを説明します。 | @serialField name type description |
@since | 特定の変更が導入されたときにマークします。 | 特定の変更が導入されたときにマークします。 |
@throws | @exceptionタグと同じです。 | @throwsタグは@exceptionタグと同じ意味を持っています。 |
{@value} | 定数の値を表示します。この定数はstatic属性でなければなりません。 | 定数の値を表示します。これは静的フィールドでなければなりません。 |
バージョン | クラスのバージョンを指定します。 | @version info |
最初の /** タグの後ろには、クラス、変数、メソッドの主要な説明が含まれます。
タグの後ろに、一つまたは複数の様々な @ タグ。 @ タグは新しい行の先頭または行の先頭に星号(*)の直後に位置する必要があります。*)
同じタイプのタグは一組にまとめます。例えば、あなたが3つの @see タグを使用して、それらを一つずつ並べることができます。
以下は、クラスの説明コメントの例です:
/*** このクラスは棒グラフを描きます。 * 著者 w3codebox * バージョン 1.2 */
javadocツールは、Javaプログラムのソースコードを入力として取り、それにコメントを含むHTMLファイルを出力します。
各クラスの情報は、独自のHTMLファイルに記述されます。javadocは、継承のツリー構造や索引も出力できます。
javadocの実装が異なるため、動作も異なる場合があります。Java開発システムのバージョンなどの詳細を確認し、適切なJavadocバージョンを選択する必要があります。
以下は、使用説明コメントの簡単な例です。各コメントは、それが説明するプロジェクトの前にあります。
javadoc処理の後、SquareNumクラスのコメントはSquareNum.htmlに見つかります。
import java.io.*; /** * このクラスはドキュメントコメントのデモンストレーションです * 著者 Ayan Amhed * バージョン 1.2 */ public class SquareNum { /** * このメソッドはnumの二乗を返します。 * これはマルチラインの説明です。使用できます * 好きなだけの行数。 * パラメータnum 二乗する値 * 戻り値として、numの二乗を返します。 */ public double square(double num) { return num * num; } /** * このメソッドはユーザーから数を入力します。 * 戻り値として、ドブル型の値を入力します。 * @exception IOException 入力エラー発生時。 * @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(); } /** * このメソッドはsquare()をデモストレーションしています。 * @param args 未使用。 * @return なし。 * @exception IOException 入力エラー発生時。 * @see IOException */ public static void main(String args[]) throws IOException { SquareNum ob = new SquareNum(); double val; 平方値を入力する: val = ob.getNumber(); val = ob.square(val); System.out.println("平方値は「" + val); } }
以下のように、javadocツールを使用してSquareNum.javaファイルを処理します:
$ javadoc SquareNum.java ソースファイルSquareNum.javaを読み込んでいます... Javadoc情報を構築しています... Standard Docletバージョン 1.5.0_13 すべてのパッケージとクラスのツリーを構築しています... SquareNum.html...を生成しています... SquareNum.java:39:警告 - returnタグは使用できません。 void型のreturn値を持つmethod内で。 パッケージの生成中-frame.html... 生成中 パッケージの生成中-サマリー.html... パッケージの生成中-tree.html... 生成中 定数の生成中-values.html... 生成中 すべてのパッケージおよびクラスのインデックスを構築中... オーバービューの生成中-tree.html... 生成中 インデックスの生成中-all.html... 生成中 廃止されたものの生成中-list.html... 生成中 すべてのクラスのインデックスを構築中... allclasses 生成中-frame.html... 生成中 allclasses 生成中-noframe.html... 生成中 index.html... 生成中 ヘルプ生成中-doc.html... 生成中 stylesheet.css... 生成中 1 警告 $