Quel est le but de @Documented
annotation en java?
J'ai vu la documentation, mais je n'ai pas pu en tirer grand-chose. Quelqu'un peut-il faire remarquer à l'aide d'un exemple clair
@Documented
est une méta-annotation. Vous postulez @Documented
lors de la définition d'une annotation, pour vous assurer que les classes utilisant votre annotation le montrent dans leur JavaDoc généré. Je n'en ai pas beaucoup utilisé, mais il y a un exemple ici . Une question précédente suggère que cela ne fonctionne pas automatiquement dans Eclipse , mais j'ai testé dans Eclipse 3.6, et mes annotations apparaissent dans les popups JavaDoc, que j'attache ou non le @Documented
annotation pour eux.
Voici un exemple de Spring, qui garantit que les méthodes transactionnelles sont marquées comme telles dans le JavaDoc:
@Target({ElementType.METHOD, ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Inherited
@Documented
public @interface Transactional {
Si certaines de nos annotations (par exemple, @InWork
) est @Documented
, puis pour chaque classe ayant ce @InWork
annotation le texte généré par javadoc contiendra @InWork
texte, comme référence à l'annotation.
Annotation:
@Documented
@Inherited // for descenders of the annotation to have the @Documented feature automatically
@Retention(RetentionPolicy.RUNTIME) // must be there
public @interface InWork {
String value();
}
Cible annotée:
/**
* Annotated class.
*/
@InWork(value = "")
public class MainApp {...}
Le texte javadoc:
Donc, vous devez décider si l'annotation doit être affichée dans le texte javadoc, et si oui, définissez @Documented
à elle.
Les informations ci-dessus sont extraites de documentation Oracle .
Veuillez noter que dans Eclipse, vous verrez dans le texte généré par javadoc TOUTES les annotations, sont-elles @Documented
, ou non.
Il est toujours correct pour la version 4.3.
J'ai trouvé une page utile dans le Tutoriels Java qui donne des exemples et plus d'explications pour un certain nombre d'annotations standard, y compris une utilisation de @Documented
. Plus précisément, regardez le bloc Note en bas pour l'exemple de préambule ( section Documentation ).