关于java注释,修饰--方法
来源:互联网 发布:淘宝客 2016 qq空间 编辑:程序博客网 时间:2024/06/05 08:28
- 先自定义一个注释类
@Target(ElementType.METHOD)@Retention(RetentionPolicy.RUNTIME)public @interface AnnotationMine{ byte cid() default -1;}
@Retention 本意为维持,保持,这里解释为此注释的适用范围
2. 用法
@AnnotationMine(cid = Sdk_define.CID_DEMAND_COLLECT) public void handleAddDemandCollect(RspParam param) { }
protected final void invokeMethod(RspParam param) { int cid = param.getCid(); Class cl = this.getClass(); for (Method method : cl.getDeclaredMethods()) { AnnotationMine oc = method.getAnnotation(AnnotationMine.class); if (oc != null) { int id = oc.cid(); if (cid == id) try { method.setAccessible(true); method.invoke(this, param); } catch (IllegalAccessException e) { e.printStackTrace(); LogUtil.e("catch",e); } catch (InvocationTargetException e) { e.printStackTrace(); LogUtil.e("catch",e); } } } }
a这里用到反射机制,先取出当前类中额method,开始遍历,
b.用getAnnotation取出关于这个method的注释,
c.加入一个null检查(因为测试类中并不是所有的方法都用了@AnnotationMine修饰,会存在空现象)
d.调用注释的cid方法,得到cid
e.用上一步得到的cid匹配得到目标method
f.method.invoke调用起来,第一参数解释为这个方法的所属类,后面参数解释为method的参数
@param receiver the object the underlying method is invoked from
0 0
- 关于java注释,修饰--方法
- 关于Java重载方法时的可用修饰符
- 关于java类中的方法加上synchronized修饰
- [java] final 修饰方法
- Java static修饰方法
- 关于JAVA的修饰符
- 关于java限定修饰符
- 关于Java final修饰符
- Java-关于final修饰符
- java synchronized修饰普通方法,修饰静态方法,修饰代码块,修饰线程run方法 比较
- java-synchronized修饰方法释疑
- Java文档注释方法
- java注释方法
- java 注释方法
- java--注释方法
- java synchronized修饰方法和修饰方法块
- java synchronized修饰方法和修饰方法块
- 关于java synchronized修饰方法时实现线程互斥遇到的问题
- 机器学习十大算法之-CART分类决策树、回归树和模型树
- 'range' object doesn't support item deletion
- 读书笔记(五)
- C++面试之GetMemory问题
- MyBatis--初级
- 关于java注释,修饰--方法
- 统计字符串中汉字的个数
- [Codeforces Round #373 DIV1D (CF718D)] Andrew and Chemistry
- struts2环境搭建
- css 参考属性大全
- 漂亮实用的loading(加载)封装
- Nor Flash与S3C2440A的之间的通信
- Dasha and Puzzle
- spring-aop之cglib代理