如何在Java中尝试查找给定类(或给定接口的所有实现者)的所有子类?截至目前,我有一种方法可以做到这一点,但我觉得效率很低(至少可以说).方法是:
在Eclipse中,有一个很好的功能叫做类型层次结构,可以非常有效地显示它.如何以编程方式进行操作?
我有一个接口“ Parent”,并且有多个类(例如Abc.java,Def.java和Xyz.java)实现了该接口。现在我想做这样的事情:
Parent factoryMethod(String condition){
Parent p = null;
if(condition.equals("Abc"))
p = new Abc();
else if(condition.equals("Def"))
p = new Def();
else if(condition.equals("Xyz"))
p = new Xyz();
return p;
}
Run Code Online (Sandbox Code Playgroud)
基本上,我将要实例化的类的名称作为参数传递给方法。这样做的最佳方法是什么?我应该为此使用反射吗?它不仅有3个课程,而且可能还有更多。所以我不想写if / else。
谢谢。