是否可以通过Java反射从父类访问嵌套的类字段?我花了很多时间阅读文档,但并没有什么真正帮助我的。有人吗?
答案 0 :(得分:0)
您可以创建嵌套类的对象,例如:
A.B obj = new A.B();
但是您的嵌套类应该是静态的。
答案 1 :(得分:0)
您可以获得类Class
的实例,该实例表示嵌套类,就像您对顶级类所做的一样,除了必须包含外部类的名称作为限定符之外。例如,使用类文字:
public class Outer {
public static void main(String[] args) {
Class<Outer.Inner> classInner = Outer.Inner.class;
Field[] classInnerFields = classInner.getDeclaredFields();
for( Field field : classInnerFields ) {
System.out.println(field.getName());
}
}
static class Inner {
private int innerField = 0;
private String innerField2 = "two";
}
}
请注意,如果Inner
不是静态的,则字段列表将包括对外部实例的引用。