2009-10-21 5 views

Répondre

4

Une raison possible est que l'utilisation des annotations peuvent se chevaucher avec celle des balises Javadoc.

Le meilleur exemple est bien sûr la balise Javadoc @deprecated et l'annotation @Deprecated, qui indiquent toutes les deux la même chose.

Les deux annotations et les balises Javadoc fournissent des métadonnées sur des éléments de code.

5

Les annotations sont code et seront représentés au niveau du code d'octets. Les balises Javadoc sont des artefacts de niveau documentation et sont des méta-données pour le processeur javadoc.

Si le niveau de rétention de la classe d'annotation est l'exécution, vous pouvez réfléchir sur la classe et d'accéder à l'annotation; aucune possibilité n'existe pour la balise javadoc (à moins que vous n'ayez accès aux fichiers sources et que vous les analysiez). Ainsi, dans un sens très étroit (par exemple un processeur javadoc qui effectue un traitement de type bytecode, tel que la génération de code), les étiquettes peuvent être considérées comme "complémentaires" aux annotations, mais c'est à peu près tout. Dans l'ensemble, c'est un mauvais mème à porter dans votre tête car il n'informe pas vraiment la vraie distinction entre ces deux constructions entièrement différentes.