Java中有没有办法通过Reflection知道一个Class有哪些内部类?
最佳答案
是的,使用 Class#getDeclaredClasses()
为了这。您只需要通过检查其修饰符来确定它是内部类还是嵌套(静态)类。假设 Parent
是父类,下面是一个启动示例:
for (Class<?> cls : Parent.class.getDeclaredClasses()) {
if (!Modifier.isStatic(cls.getModifiers())) {
// This is an inner class. Do your thing here.
} else {
// This is a nested class. Not sure if you're interested in this.
}
}
注意:这仅不包括匿名类,但参见 your previous question关于这个主题,我不认为你明确要求他们。
关于java - 有没有办法通过Java中的反射获取InnerClasses列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2752226/