java注解的基本操作(java注解用代码的基本实现)

这里只例举了在方法上的注解操作,其他方面与此操作类似,我就不多提了,想深入了解可以查资料或者看书哈,具体看代码如何实现吧。

我编写的注解处理器代码为:



被测试的类内容如下:




代码实现如下:


package com.jiaxun.annotation;

import java.lang.annotation.Annotation;
import java.lang.reflect.Method;

public class AnnotationDemo {
	//通过注解来实现方法调用
	public static void annotationTest1()throws Exception{
		Class clazz = Class.forName("com.jiaxun.annotation.TestClass");
		TestClass newInstance = (TestClass)clazz.newInstance();
		for (Method method : clazz.getMethods()) {
			for (Annotation annotation : method.getAnnotations()) {
			String annotationName = annotation.annotationType().getSimpleName();
			String annotationFieldName = ((Test) annotation).name();
			if(annotationFieldName.equals("zengjiaxun"))
				method.invoke(newInstance);
			}
		}
	}
	//通过注解属性值来实现方法调用
	public static void annotationTest2()throws Exception{
		Class clazz = Class.forName("com.jiaxun.annotation.TestClass");
		TestClass newInstance = (TestClass)clazz.newInstance();
		for (Method method : clazz.getMethods()) {
			Annotation[] annotations = method.getAnnotations();
			for (Annotation annotation : annotations) {
				String annotationName = ((Test)annotation).name();
				if(annotationName.equals("xun")){
					method.invoke(newInstance);
				}
			}
		}
	}
	public static void main(String[] args) throws Exception {
		annotationTest1();
		annotationTest2();
	}
}

输出结果为



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值