据我所知,@Documented批注仅由javadoc生成器使用以从源生成javadocs。因此,保留类型应为SOURCE,但应为RUNTIME。为什么?

@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.ANNOTATION_TYPE)
public @interface Documented {
}

最佳答案

不会解释为什么@Documented为什么需要运行时保留的IMO

是的,它确实。可以说我运送了一个没有源文件的jar文件。用户只能使用来自类文件的信息来构建适当的javadoc,因为类文件具有适当的批注的原因是它们是RetentionPolicy.RUNTIME。

07-26 03:56