我正在玩Java(javax)注解处理。

假设我有一个注释的方法:

@Target(ElementType.METHOD)

public @interface MethodAnnotation { }

现在我想使用带注释的方法来处理从类型中覆盖的所有方法:

interface MyInterface() {

@MethodAnnotation

void f()

}

class MyClass implements MyInterface {

override void f() { } //

}

@Inherited元注释在这里似乎不合适:

Note that this meta-annotation type has no effect if the annotated type is used to annotate anything other than a class.

另外,是否可以处理一个未被子类覆盖的继承类方法?喜欢这个:

class MyClass {

@MethodAnnotation

void f() { }

}

class MySubClass extends MyClass { } //

// or at least to find out that it doesn't

// override the method

如何在AbstractProcessor中访问某种方法的覆盖方法?

我想,为了实现这一点,我需要找到eclosing类的子类,但是我还没有找到一个方法来做到这一点。

UPD:我想可以使用RoundEnvironment.getRootElements(),但仍然没有找到正确的方法。

java 注释添加引用_java – 如何引用注释处理中的方法的实现?相关推荐

  1. java 幽灵引用_Java 幽灵引用的作用

    原标题:Java 幽灵引用的作用 来源:imzoer, blog.csdn.net/imzoer/article/details/8044900 找实习的时候,面试大摩,就遇到了这个问题,当时真不该跟 ...

  2. java reference 传引用_Java的引用(reference)---Roni

    摘自<Java面向对象编程>一书,作者:孙卫琴 来源:www.javathinker.org 在JDK1.2以前的版本中,当一个对象不被任何变量引用,那么程序就无法再使用这个对象.也就是说 ...

  3. java ldap操作实例_Java Spring Security示例教程中的2种设置LDAP Active Directory身份验证的方法...

    java ldap操作实例 LDAP身份验证是世界上最流行的企业应用程序身份验证机制之一,而Active Directory (Microsoft为Windows提供的LDAP实现)是另一种广泛使用的 ...

  4. java 如何级联删除_Java学习-040-级联删除目录中的文件、目录

    之前在写应用模块,进行单元测试编码的时候,居然脑洞大开居然创建了一个 N 层的目录,到后来删除测试结果目录的时候,才发现删除不了了,提示目录过长无法删除.网上找了一些方法,也找了一些粉碎机,都没能达到 ...

  5. java 时间戳 周几_Java:Unix时间戳记中的日期

    我需要将unix时间戳转换为日期对象. 我尝试了这个: java.util.Date time = new java.util.Date(timeStamp); 时间戳值为:1280512800 日期 ...

  6. java 原子引用_Java 原子性引用 AtomicReference

    更多 Java 并发编程方面的文章,请参见文集<Java 并发编程> AtomicReference An object reference that may be updated ato ...

  7. java基本语文档_Java 文档注释

    Java 文档注释 Java 支持三种注释方式.前两种分别是 // 和 /* */,第三种被称作说明注释,它以 /** 开始,以 */结束. 说明注释允许你在程序中嵌入关于程序的信息.你可以使用 ja ...

  8. java常量数组吗_java – 如何在注释中使用数组常量

    我想为注释值使用常量. interface Client { @Retention(RUNTIME) @Target(METHOD) @interface SomeAnnotation { Strin ...

  9. java的虚引用_java虚引用的使用说明

    "为一个对象设置虚引用关联的唯一目的就是能在这个对象被收集器回收时收到一个系统通知." public static void main(String[] args) throws ...

最新文章

  1. python字典中找最小值_从包含元组值的字典中查找最小值和最大值
  2. 初学Java Web(7)——文件的上传和下载
  3. pythonre正则表达式1012pythonre正则表达式_python re模块 正则表达式
  4. 后台服务系统之Dubbo协议
  5. mysql结果以字符串显示不出来,mysql – 为什么SQl MATCH AGAINST找不到结果中只有3个字符的结果?...
  6. python pointer_python 的隐式指针特征与class inheritance
  7. flow 静态类型检查 js
  8. 工作304:uni返回上一页面
  9. python中如何去除列表中重复元素?
  10. 无法通过ip地址连接其它电脑的数据库,但是又可以ping通,错的不是配置,而是差了一个步骤
  11. Apache提示You don't have permission to access / on this server问题解决
  12. freetype 2.11.0必须使用VS2012编译
  13. python 进程通信方式_python 进程 进程池 进程间通信实现解析
  14. 20165219 王彦博 实验五 网络编程与安全 实验报告
  15. 【干货】如何有效地提问
  16. [小说]魔王冢(48)诏告
  17. 超硬核!MySQL优化从执行计划开始(explain超详细)
  18. 如何激励自己专注学习
  19. Win32 Disk Imager Error 5: Access is Denied 解决方案
  20. 压测springCloud报错ThreadPoolExecutor [Running, pool size = 10, active threads = 10, queued tasks=0错误 )

热门文章

  1. Linux内存管理之内存寻址:分段机制的实现方式
  2. srsLTE源码学习:MAC层抓包pcap
  3. centeros下安装python
  4. maven+springboot整合mybatis(十二)
  5. IDEA常用的风格设置
  6. python3 threading是否被抛弃_Python3中的线程模块是否发生了变化?如果是,怎么办?...
  7. linux如何抓取本地socket,linux 本地socket
  8. mysql left join和or_Case:MySQL使用left join的时候or改写成union可以提高效率
  9. asp php 对照表,asp 与php中常用函数对比
  10. dd var tmp .oracle,Oracle 11gR2 RAC ohasd failed to start 解决方法