本文共 1114 字,大约阅读时间需要 3 分钟。
java中注解不会影响程序的运行,但是第三方程序或工具可以利用代码中的注解完成特殊的任务,间接控制程序的运行。
小例子:
定义一个简单的注解类:
@Retention(RetentionPolicy.RUNTIME)//声明注解的保留期限@Target(ElementType.METHOD)//声明可以使用该注解的目标类型,method表示为方法上的注解public @interface NeedTest { //定义注解 boolean value() default true;//声明注解成员}使用注解:
public class ForumService { @NeedTest(value=true) public void deleteForum(int forumId){ System.out.println("删除呢论坛模块:"+forumId); } @NeedTest(value=false) public void deleteTopic(int postId){ System.out.println("删除论坛主题:"+postId); }}访问注解:
public class ToolTest { @Test public void tool(){ Class clazz= ForumService.class; Method[] methods=clazz.getDeclaredMethods(); System.out.println(methods.length); for(Method method:methods){ NeedTest nt=method.getAnnotation(NeedTest.class); if(nt!=null){ if(nt.value()){ System.out.println(method.getName()+"()需要测试"); }else { System.out.println(method.getName()+"()不需要测试"); } } } }}2 deleteForum()需要测试 deleteTopic()不需要测试
转载地址:http://bojqi.baihongyu.com/