2013-02-05 37 views
0

我想使用Java反射來調用類礦井具有以下簽名的方法: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對象?

回答

2

如果paramsObject []類型,那麼你需要調用invoke這樣的:

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

但是這並不能說明NoSuchMethodException

+0

問題解決了!在固定的一切中添加。我喜歡快速修復!再次感謝! –