Open chengfengjie opened 6 years ago
定义一个注解的时候会用到元注解。Java5定义了4个元注解,用来对自定义注解类型做说明
@Target
@Target
说明了注解所修饰的对象范围: 可以被用于 packages
、types
(类、接口、枚举)、类成员(方法、构造方法、成员变量、枚举值)、方法参数和本地变量(如循环变量、catch参数)。
@Target
取值(ElementType):
CONSTRUCTOR
:用于描述构造器FIELD
: 用于描述域LOCAL_VARIABLE
: 用于描述局部变量METHOD
: 用于描述方法PACKAGE
: 用于描述包PARAMETER
: 用于描述参数TYPE
: 用于描述类、接口或enum声明@Target
的简单用法
@Target(value = {ElementType.TYPE})
public @interface UpdateDate {
}
概念
Annotation是Java5开始引入的特性。它提供了一种安全的类似于注释和Java doc的机制。实事上,Annotation已经被广泛用于各种Java框架,如Spring,Jersey,JUnit,TestNG。注解相当于是一种嵌入在程序中的元数据,可以使用注解解析工具或编译器对其进行解析,也可以指定注解在编译期或运行期有效。这些元数据与程序业务逻辑无关,并且是供指定的工具或框架使用的