@Target注解

Summary::用于描述注解的使用范围(即:被描述的注解可以用在什么地方)

样例

@Target({ElementType.TYPE,ElementType.METHOD})
public @interface DemoAnnotation {
}

括号后面的常量枚举(ElementType)数组就标识DemoAnnotation能够加在哪些字段前
更多样例见TargetTest.java -计算机系统学习demo

ElementType

是一个常量枚举类型,包含以下枚举值:

常量名 描述
ANNOTATION_TYPE 用于注解
CONSTRUCTOR 用于构造函数
FIELD 用于字段声明(包括枚举)
LOCAL_VARIABLE 用于局部变量
METHOD 用于方法/函数
TYPE 用于类,接口,注解,枚举
PACKAGE 包对应路径下的package-info.java文件中用包注解来修饰包声明语句。可用于生成JavaDoc
PARAMETER 用于方法参数
TYPE_PARAMETER 用于标注类型参数(泛型类)
TYPE_USE 用于任意类型(不包括class)