【发布时间】:2011-10-20 05:03:34
【问题描述】:
可能重复:
How do you find all subclasses of a given class in Java?
我有一个超类,MyClass,它是抽象的。任何人都可以实现它。
在运行时,我需要使用 java 反射确定哪些类从这个类继承。怎么可能做到这一点?
【问题讨论】:
标签: java
可能重复:
How do you find all subclasses of a given class in Java?
我有一个超类,MyClass,它是抽象的。任何人都可以实现它。
在运行时,我需要使用 java 反射确定哪些类从这个类继承。怎么可能做到这一点?
【问题讨论】:
标签: java
您可以使用Reflections 库。
使用反射,您可以查询元数据,例如:
- 获取某种类型的所有子类型
- 获取所有带有注释的类型/方法/字段,w/o 注解参数匹配
- 获取匹配正则表达式的所有资源
【讨论】:
【讨论】:
做到这一点的唯一方法(不求助于外部库)是遍历所有类并单独检查它们 - 没有内置有效的方法(实际上也不可能,除了扫描所有类之外,你还能怎么做呢?类,因为它们可以动态加载?)
有关更多详细信息,请参阅 Stack 溢出问题 How do you find all subclasses of a given class in Java?。
【讨论】: