@Target注解常用参数含义:
-
ElementType.TYPE:可以用于类、接口和枚举类型。
-
ElementType.FIELD:可以用于字段。
-
ElementType.METHOD:可以用于方法。
-
ElementType.PARAMETER:可以用于方法的参数。
-
ElementType.CONSTRUCTOR:可以用于构造函数。
-
ElementType.LOCAL_VARIABLE:可以用于局部变量。
-
ElementType.ANNOTATION_TYPE:可以用于注解类型。
-
ElementType.PACKAGE:可以用于包。
-
ElementType.TYPE_PARAMETER:可以用于类型参数声明。
-
ElementType.TYPE_USE:可以用于使用类型的任何语句中。
@Retention注解常用参数含义:
-
RetentionPolicy.SOURCE:注解只在源代码中存在。
-
RetentionPolicy.CLASS:注解只保存在class。
-
RetentionPolicy.RUNTIME:注解不仅在源码中也存在class,运行时生效(最常用)。