通过反射获取Annotation值

1.创建Annotation注解,该注解需用@Retention(RetentionPolicy.RUNTIME),RetentionPolicy.RUNTIME表示
编译器会把Annotation记录在class文件中,JVM可获得Annotation信息,才能通过反射获取注解值

@Retention(RetentionPolicy.RUNTIME)
public @interface CAnnotation {
	int value();
}

2.通过反射获得注解的value值

@CAnnotation(value=1)
public class RuntimeTest {
	public static void main(String[] args){
		Class clz=RuntimeTest.class;//加载RuntimeTest类并获得运行时RuntimeTest类
		CAnnotation an=(CAnnotation) clz.getAnnotation(CAnnotation.class);//获得RuntimeTest类的CAnnotation注解
		System.out.println("我的注解值为:"+an.value());//输出注解值
	}
}

3.测试输出结果如下:
在这里插入图片描述


版权声明:本文为weixin_43638314原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。