我可以在java中动态引用对象吗?

我可以在java中动态引用对象吗?,java,object,dynamic,reference,runtime,Java,Object,Dynamic,Reference,Runtime,我在一个名为AnyLogic的模拟环境中工作,它使用Java作为底层代码 在我的示例中,用户绘制流程图,并在运行时实例化流程图的每个元素。我可以通过代码确定用户绘制了什么: LinkedList eo = (LinkedList) this.getEmbeddedObjects(); 它返回表示流程图中所有对象名称的字符串列表 我想动态地访问这些对象的方法,但我对Java还不熟悉,不知道该怎么做。根据我对反射的理解,我可以实例化classForName,但在本例中,我

我在一个名为AnyLogic的模拟环境中工作,它使用Java作为底层代码

在我的示例中,用户绘制流程图,并在运行时实例化流程图的每个元素。我可以通过代码确定用户绘制了什么:

           LinkedList eo = (LinkedList) this.getEmbeddedObjects();
  • 它返回表示流程图中所有对象名称的字符串列表
我想动态地访问这些对象的方法,但我对Java还不熟悉,不知道该怎么做。根据我对反射的理解,我可以实例化classForName,但在本例中,我已经实例化了对象,我想使用字符串来访问它们

我不确定如何进行,并感谢任何建议

谢谢:-)

您可以获取方法名列表,找到所需的方法名并调用它

您可以使用此任务

不过,这个API有点冗长。如果这是一个问题,那么您应该选择一个可用的选项。

什么是“流程图中所有对象的名称”?
您是否有一些HashMap,它按对象的名称存储对象?如果是这样,只需按对象的名称获取对象并直接调用其方法,无需任何反射。

非常感谢您提供了这一非常有用的链接和快速响应!正如missingfaktor所建议的那样,我使用了MIRROR,因为它使我的代码更可读(也更容易),但是这个背景对于我理解反射的内部工作原理是必不可少的。非常感谢-这对我有很大的帮助!我选择继续使用MIRROR,它更容易实现。我真的很感谢API参考和建议的API,它们让我的工作轻松了很多。谢谢Alexei-我指的是一个包含对象名称字符串的LinkedList。我得到了前进所需的答案(见上面的答案),但我感谢您的帮助:-)