元注释

声明注释时,可以使用以下元注释包含元信息:

  • @Target:指定可以使用注释(类,函数,属性,表达式等)注释的可能类型的元素

  • @Retention 指定注释是否存储在已编译的类文件中,以及它是否在运行时通过反射可见(默认情况下,两者都为真。)

  • @Repeatable 允许多次在单个元素上使用相同的注释。

  • @MustBeDocumented 指定注释是公共 API 的一部分,并且应包含在生成的 API 文档中显示的类或方法签名中。

例:

@Target(AnnotationTarget.CLASS, AnnotationTarget.FUNCTION,
        AnnotationTarget.VALUE_PARAMETER, AnnotationTarget.EXPRESSION)
@Retention(AnnotationRetention.SOURCE)
@MustBeDocumented
annotation class Fancy