我有一个看似简单的问题,我在大约一周的搜索时间内无法找到解决方案,所以我想问一下。我想要一个数组值,例如anArray[1]
并将其设置为等于另一个类中的变量... otherClass.variableOne

这很容易做到,但是我希望能够将变量用作我要从中获取变量的类的名称。因此,我想要的不是“ otherClass.variableOne”,而是:

String classVar = "otherClass";
anArray[1]=classVar.variableOne;


我不确定我是否需要将classVar设置为等于... className(otherClass)之类的东西。我对Java很陌生,遇到很大困难。

我知道这似乎很愚蠢,但对于我想做的事情是必要的。我考虑了反思,但似乎无法做到我所需要的。本质上我的问题是:

String classVar = "otherClass";
anArray[1]=classVar.variableOne


在classVar是引用包含公共static int variableOne的类的变量的情况下,如何进行类似的工作?

请原谅有限的编程经验。
任何帮助是极大的赞赏。
提前致谢。

最佳答案

您需要使用the Reflection API。您可以使用它来获取表示“ OtherClass”的Class变量(例如Class.forName("com.example.OtherClass"),然后遍历其字段和方法,甚至创建它的新实例。

10-06 02:03