有没有办法通过Java中的Reflection知道类具有的内部类?
是的,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.
}
}
Run Code Online (Sandbox Code Playgroud)
注意:这只是不包括匿名类,但是看到你之前关于这个主题的问题,我认为你没有明确要求它们.
| 归档时间: |
|
| 查看次数: |
1934 次 |
| 最近记录: |