一直很好奇这些Java中注解是怎么实现的,所以就去了解了一番,做此记录。
1.元注解(meta-annotations),可以理解为为其他注解做注解。
- @Target:描述注解的使用范围,主要返回了枚举类ElementType的值,其中ElementType的值主要有(最后两个为Java8新增的):
-
TYPE:说明该注解只能被声明在一个类上。
-
FIELD:说明该注解只能被声明在一个类的字段上。
-
METHOD:说明该注解只能被声明在一个类的方法上。
-
PARAMETER:说明该注解只能被声明在一个方法参数上。
-
CONSTRUCTOR:说明该注解只能声明在一个类的构造方法上。
-
LOCAL_VARIABLE:说明该注解只能声明在一个局部变量上。
-
ANNOTATION_TYPE:说明该注解只能声明在一个注解类型上。
-
PACKAGE:说明该注解只能声明在一个包名上。
-
TYPE_PARAMETER:说明该注解只能申明在一个参数类型上。
-
TYPE_USE:类型的作用。
-