Comment puis-je référencer la valeur d'un champ statique final dans la classe?

96

À l'aide de JavaDoc, comment puis-je référencer la valeur d'un champ statique final dans la classe?

Je veux que le ???dans cet exemple soit remplacé par la valeur du champ STATIC_FIELD.

/**
 * This is a simple class with only one static field with the value ???.
 */
public class Simple {

    /**
     * We can reference the value with {@value} here, 
     * but how do we reference it in the class JavaDoc?
     */
    public static final String STATIC_FIELD = "simple static field";

}
Simon
la source

Réponses:

194

Voulez-vous dire {@value #STATIC_FIELD}?

Marquis de Lorne
la source
3
cela peut-il être référencé dans d'autres classes également? quand j'ai essayé de faire ça, ça n'a pas marché pour moi.
Rajith Gun Hewage
20
@RajithGunHewage, vous pouvez le référencer à partir d'une autre classe comme{@value com.package.other.Clazz#STATIC_FIELD}
Sean
2
Juste au cas où, pour les constantes non primitives, ce sera {@link #STATIC_NON_PRIMITIVE_FIELD}
Yuriy
1
@Sean, en fait, cela devrait être en utilisant {@link com.package.other.Clazz # STATIC_FIELD}
Cristian Ebbens
1
@Yuriy Ce n'est pas correct. {@link ...}fournit un lien vers le Javadoc du champ nommé, qui à son tour ne fournit pas la valeur. {@value ...}fournit la valeur réelle, qui est ce qui a été demandé. «Non primitif» n'a absolument rien à voir avec cela. Voir l'exemple de {@value ...}dans la documentation de l'outil Javadoc, par exemple, qui utilise java.lang.String.
Marquis of Lorne