在Java中通过Reflection API确定类子类

时间:2011-08-04 17:08:07

标签: java

  

可能重复:
  How do you find all subclasses of a given class in Java?

我有一个超类MyClass,它是抽象的。任何人都可以实现它。 在运行时,我需要使用java反射确定哪些类从此类继承。怎么能这样做?

3 个答案:

答案 0 :(得分:4)

您可以使用Reflections库。

  

使用思考可以查询元数据,例如:

     
      
  • 获取某种类型的所有子类型
  •   
  • 获取所有带注释的类型/方法/字段,没有   注释参数匹配
  •   
  • 获取与正则表达式匹配的所有资源
  •   

答案 1 :(得分:3)

答案 2 :(得分:0)

这样做的唯一方法(不使用外部库)是循环遍历所有类并单独检查它们 - 没有内置的有效方法(也不存在真正的,除了扫描所有方法之外你还会怎么做这些类可以动态加载吗?)

有关详细信息,请参阅Stack Overflow问题 How do you find all subclasses of a given class in Java?