Java 反射 : Get inner instantiated field

标签 java reflection inner-classes

我有一个看起来像这样的界面:

public interface A {
    public interface B {
        public static final Cat cat = new Cat("Alice");
    }
}

有什么方法可以通过反射访问 Cat 对象吗?

我试过这个:

Field catField = Class.forName("A.B").getField("cat");

但它给了我一个 ClassNotFoundException。

提前致谢!

最佳答案

您需要使用带有反射的Outer$Inner 语法,而不是Outer.Inner

关于Java 反射 : Get inner instantiated field,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42994898/

相关文章:

java - Spring MVC 与 Maven

java - Spring MVC 休息 Controller 未调用

java - Android Studio Java转换值应用程序不断崩溃

c# - 如何使用 C# 和反射来获取实现类类型而不是接口(interface)类型

python - 无法使用 Python 中的检查通过 exec 获取方法 "declared"的源代码

function - 如何在 Kotlin 中初始化嵌套数据类?

java - 无法使用 javamail api 将邮件发送到 gmail 帐户

.net - 使反射成为可能的 C# 语言的特性是什么?

java - 内部类声明和初始化

c++ - 具有在类内部定义的结构的 UML 类图