元注解的概念
元注解是可以注解到注解上的注解,或者说元注解是一种基本注解,但是它能够应用到其他的注解上面。
元注解主要有 @Retention、@Documented、@Target、@Inherited、@Repeatable。
元注解@Retention
@Retention应用到一个注解上用于说明该注解的生命周期,取值如下:
1、RetentionPolicy.SOURCE 注解只在源码阶段保留,在编译阶段进行编译时它将被丢弃忽视。
2、RetentionPolicy.CLASS 注解只被保留到编译进行的时候,它并不会被加载到JVM中,“默认方式”。
3、RetentionPolicy.RUNTIME 注解可以保留到程序运行的时候,它会被加载进入到JVM中,所以在程序运行时可以获取到它们。
package com.lagou.task10; import java.lang.annotation.Retention; import java.lang.annotation.RetentionPolicy; // @Retention(RetentionPolicy.SOURCE) // 表示下面注解在源代码中有效 // @Retention(RetentionPolicy.CLASS) // 表示下面的注解在字节码文件中有效,默认方式 @Retention(RetentionPolicy.RUNTIME) // 表示下面的注解在运行时有效 public @interface MyAnnotation { public String value() default "默认值";
}
原文:https://www.cnblogs.com/xujiaqi/p/13659012.html