我必须实现一个逻辑,给定一个子类,我需要访问它的父类和该父类的所有其他子类,如果有的话.我没有在Java Reflection中找到任何允许我们访问父类的所有子类的API.有什么办法吗?
例如:
class B extends class A
class C extends class A
Run Code Online (Sandbox Code Playgroud)
现在使用B类,我可以通过调用找到超类getSuperClass().但是,有了父类,即B类和C类,有没有办法找到所有的子类?
Bal*_*usC 12
如果这不是功课(其中第三方librares可能是不允许的),我会建议谷歌的思考 " Reflections#getSubTypesOf().
Set<Class<? extends A>> subTypes = reflections.getSubTypesOf(A.class);
Run Code Online (Sandbox Code Playgroud)
您可以通过自己扫描类路径来自己做更少或更多,从ClassLoader#getResources()您传递""的名称开始.