@在java中logging注释

java中@Documented注释的目的是什么?

我看到了这个文档,但从中得不到什么。 有人可以指出一个明确的例子的帮助

@Documented是一个元注释。 定义注释时应用@Documented ,以确保使用注释的类在其生成的JavaDoc中显示。 我没有看到太多的用处,但这里有一个例子 。 以前的问题表明它在Eclipse中不能自动工作 ,但是我已经在Eclipse 3.6中进行了testing,并且我的注释出现在JavaDocpopup窗口中,无论我是否将@Documented注释附加到它们。

下面是Spring的一个例子,它确保事务方法在JavaDoc中被标记为:

 @Target({ElementType.METHOD, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Inherited @Documented public @interface Transactional { 

如果我们有一些注释,比如说@InWork@Documented ,那么对于每个拥有@InWork类,由javadoc生成的文本将包含@InWork文本作为注释的引用。

注解:

 @Documented @Inherited // for descenders of the annotation to have the @Documented feature automatically @Retention(RetentionPolicy.RUNTIME) // must be there public @interface InWork { String value(); } 

注释目标:

 /** * Annotated class. */ @InWork(value = "") public class MainApp {...} 

javadoc文本:

在这里输入图像说明

所以,你必须决定,如果注释应该显示在javadoc文本,如果是的话,设置@Documented它。

以上信息摘自Oracle文档 。


请注意,在Eclipse中,您将在javadoc生成的文本中看到所有注释,它们是否被logging或不被logging。

4.3版本仍然是正确的。

我在Java教程中find了一个有用的页面,它给出了许多标准注释的示例和更多解释,包括@Documented使用。 具体来说,请查看前面的示例( 文档部分 )底部的注释块。