是否可以将包的内容读入Class对象数组?目前我的代码
中的内容如下所示static Class<?>[] classArray = {
ServerNameRsp.class,
ConfigCompleteRsp.class};
两者都是&#39; ServerNameRsp&#39;和&#39; ConfigCompleteRsp&#39;在相同的包中,随着包的增长,不必将所有添加的类硬编码到该数组中是理想的。有没有办法读取包的内容?
答案 0 :(得分:2)
如果您使用Reflections java库,则可以执行以下操作:
SubTypesScanner sts = new SubTypesScanner(false); /* false means include direct Object subtypes in results.*/
Reflections reflections = new Reflections("Your.package.name", sts);
Set<Class<? extends Object>> classes = reflections.getSubTypesOf(Object.class);
for (Class<? extends Object> clazz : classes) {
System.out.println(clazz);
}