105

プライベートフィールドへのjavadocリンクを作成するにはどうすればよいですか?

class Foo {
  private String bar;
  public String getBar() { return bar; }
}

{@link Foo#getBar()}動作します。

{@link Foo#bar}そうではありません。

4

2 に答える 2

148

構文は問題ありません。次の両方がクラス内で機能します(別のクラスのプライベートフィールドにリンクする理由はありません)。

public class Demo {
  private int num = 0;
  /**
  * Access field {@link Demo#num} / {@link #num}  ...
  */
  private void foo() { ... }
...

たとえばantを介してjavadocを生成する場合は、プライベートフィールドを含めるように指定するだけです(デフォルトの最小アクセスは「プライベート」ではなく「保護」です)。

<target name="javadoc" depends="compile" description="gen javadoc">
  <javadoc destdir="build/docs"
           author="true"
           version="true"
           use="true"
           access="private"
           windowtitle="Demo API">

    <fileset dir="src/main" defaultexcludes="yes">
      <include name="com/**"/>
    </fileset>

    <doctitle><![CDATA[<h1>Test</h1>]]></doctitle>
    <link offline="true" href="http://download.oracle.com/javase/6/docs/api/" packagelistLoc="doc"/>
  </javadoc>
</target>
于 2013-02-10T11:15:33.587 に答える
7

コメントに書いていることは問題ないと思います。ドキュメントにプライベートフィールドも含めるようにJavaDocに指示する必要があります。JavaDocには、このためのオプション-privateがあります。この答えを確認してください。

于 2013-02-10T10:54:53.953 に答える