Java元注解
元注解
什么是元注解
定义:定义在注解上的注解
常用的元注解:
@Target:表示该注解作用在什么上面(位置),默认注解可以在任何位置. 值为:ElementType的枚举值
METHOD:方法
TYPE:类 接口
FIELD:字段
CONSTRUCTOR:构造方法声明
@Retention:定义该注解保留到那个代码阶段, 值为:RetentionPolicy类型,默认只在源码阶段保留
SOURCE:只在源码上保留(默认)
CLASS:在源码和字节码上保留
RUNTIME:在所有的阶段都保留
使用元注解自定义注解
@Target({ElementType.METHOD,ElementType.TYPE}) // 限制该注解只能在方法上和类上使用
@Retention(RetentionPolicy.RUNTIME) // 设置注解保留到运行阶段
public @interface MyAnnotation {
}
使用自定义注解
@MyAnnotation
public class Test {
//@MyAnnotation // 编译报错
int num;
@MyAnnotation
public static void main(String[] args) {
//@MyAnnotation // 编译报错
String str;
}
}