javadocリンクタグのハッシュ「#」の目的は何ですか?
/** Call {@link #method} to do foo. */
Javadocは、あいまいなリンクを回避するために、クラスとメソッド/コンストラクタのシグネチャまたはフィールド名の間の区切り文字として#を使用します。
Javadocの@linkタグと@seeタグは、パッケージ、クラス、およびクラス内の特定のメソッド/コンストラクターまたはフィールドへの参照とともに使用できます。おそらく明らかではありませんが、たとえば、パッケージ「ab」にクラス「c」があり、同じプロジェクトに「c」というフィールドを持つパッケージ「a」にクラス「b」があることは合法です。「パッケージab、クラスc」へのJavadocリンクは「abc」と記述され、「パッケージa、クラスb、フィールドc」へのリンクは「ab#c」と記述されます。名前が異なる場合、Javadocツールは。も受け入れます。メソッド、コンストラクター、またはフィールドの前のセパレーター。
リンクが#で始まる場合、同じクラスのメソッド/フィールド/コンストラクターを参照します。これは、HTTP URLでのアンカーの使用法に類似しています。ここで、href = "doc.html#a1"は"doc.html"の"a1"アンカーを指し、href = "#a1"は同じドキュメント。
クラスとメソッドの間の「区切り」です。
たとえば、同じクラスにメソッドへの参照を含めることができます。
{@link #methodA() whatever}
または他のクラスにあるメソッドへの参照の場合、構文は class # method です。
{@link MyClass#methodA() whatever}
次に#
セパレーターです。
ドキュメントから:
参照されるクラスの指定されたパッケージ、クラス、またはメンバー名のドキュメントを指す、表示可能なテキスト ラベルを含むインライン リンクを挿入します。このタグは、タグのテキスト部分 (@return、@param、@deprecated など) を含む、概要、パッケージ、クラス、インターフェイス、コンストラクター、メソッド、およびフィールドのすべてのドキュメント コメントで有効です。
同じクラスの別のメソッドの javadoc へのリンクを挿入します。
たとえば、String.isEmpty() javadoc には、String.length()メソッドへのリンクがあります。
javadoc は次のとおりです。
Returns <tt>true</tt> if, and only if, {@link #length()} is <tt>0</tt>.