0

我想使用 Java 反射来调用我的一个具有以下签名的类的方法:

public Object execute(Object...params)

在我的加载器类中,我已经加载了类,但我不确定如何设置我的 getMethod 调用。目前,我有这样的事情:

Method classEntry = _loadedClass.getMethod("execute", new Class[]{Object[].class});

然后,我尝试在创建我的类的 newInstance 后调用此方法,方法是:

Object classObj = _loadedClass.newInstance();
classEntry.invoke(classObj, params); // params comes in from the method as Object...params

这给了我一个java.lang.NoSuchMethodException例外。我知道我的问题在于我的 getMethod 调用。我应该如何设置它以接受 params 对象?

4

1 回答 1

2

如果params是类型,Object []那么你需要这样调用invoke

classEntry.invoke(classObj, new Object [] {params});

但这并不能说明NoSuchMethodException

于 2013-02-05T18:32:22.227 回答