107 votes

Comment lier la javadoc à un champ privé ?

Comment faire un lien javadoc vers un champ privé ?

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

{@link Foo#getBar()} travaux.

{@link Foo#bar} ne le fait pas.

150voto

michael_n Points 980

La syntaxe est bonne, les deux éléments suivants fonctionnent au sein d'une classe (et il n'y a aucune raison de créer un lien vers un champ privé d'une autre classe) :

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

Lors de la génération de la javadoc, par exemple via ant, il suffit de préciser que les champs privés doivent être inclus (l'accès minimum par défaut est "protected", et non "private") :

<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>

7voto

damix911 Points 1161

Je pense que ce que vous écrivez dans les commentaires est bien, vous devez juste dire à JavaDoc d'inclure également les champs privés dans la documentation. JavaDoc a une option -private pour cela. Consultez cette réponse .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X