用一个简单例子
自定义注解:
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
/**
*
*
*/
@Retention(RetentionPolicy.RUNTIME)
public @interface MyAnnotation
{
public String hello() default "lzyer";
public String world();
}
Retention:表示注解保留时间和注释类型是否被保留,如果没有Retention注解的声明,是默认的RetentionPolicy.CLASS.
从API文档中可以知道RententionPolicy是枚举类型,取值可以为CLASS,RUNTIME,SOURCE.
CLASS:表示的是这种注解在编译时,会保存在.class文件中,JVM在运行时不会被保存
RUNTIME:表示在编