Java Reflection,获取参数类型

时间:2013-01-07 08:34:00

标签: java reflection parameters

我有一个方法callMethod,它接受参数:methodName(String)和parameters(Object [])。 现在,一开始对我来说一切都很好,但我偶然发现了一个问题。 您必须知道要使用反射的Object的类型。到目前为止,我一直在以这种方式确定它:

Class[] getParameterTypes(Object[] parameters) {
    Class[] parameterTypes = new Class[parameters.length];
    for (int i = 0; i < parameters.length; i++) {
        parameterTypes[i] = parameters[i].getClass();
    }
    return parameterTypes;
}

callMethod用于从外部源调用方法。当这些方法将原始参数作为类型或接口(List等)并且我知道原因时,它似乎失败了。

我的问题是: 有没有办法保持它/类似的方式,或唯一的解决方案是将类型信息(f.e Integer.TYPE原语等)传递给上述方法:

callMethod(String methodName, Object[] parameters, Class[] parameterTypes);

感谢您的帮助。

0 个答案:

没有答案
相关问题