0
我試圖調用靜態方法與Object[]
參數類型。當我調試時,識別出正確的方法,並且我認爲參數類型對我來說是正確的類型。Java Method.invoke()拋出IllegalArgumentException:參數類型不匹配
public String convertToJSFunction(Method method, Object[] params) {
String function = method.getName();
for (Method m : JavaToJS.class.getDeclaredMethods()) {
if (m.getName().equals(function))
try {
return (String) m.invoke(null,params);
} catch (IllegalAccessException e) {
e.printStackTrace();
return null;
} catch (InvocationTargetException e) {
e.printStackTrace();
return null;
} catch (IllegalArgumentException e) {
e.printStackTrace();
return null;
}
}
return null;
}
JavaToJS
只有靜態方法。調試完畢後,我試圖調用m
是這樣的方法:
public static String setRegionNumber(Object[] params)
這拋出的IllegalArgumentException: argument type mismatch
。這怎麼可能?