Скопируйте код кода следующим образом:
/**
* Получите тип параметра метода отражения на основе имени метода (обратите внимание на использование перегруженного метода с тем же именем без его рассмотрения)
* Экземпляр класса @param obj
* @param имя метода имя метода
* @возвращаться
* @throws ClassNotFoundException
*/
общедоступный статический класс [] getMethodParamTypes (Object classInstance,
String MethodName) выдает ClassNotFoundException {
Класс [] paramTypes = null;
Метод[] методы = classInstance.getClass().getMethods();//Все методы
for (int i = 0; i<methods.length; i++) {
if(methodName.equals(methods[i].getName())){//Соответствует имени входящего метода
Параметры класса [] = методы [i].getParameterTypes();
paramTypes = новый класс [params.length];
for (int j = 0; j < params.length; j++) {
paramTypes[j] = Class.forName(params[j].getName());
}
перерыв;
}
}
вернуть типы параметров;
}
//Получаем тест метода (для класса Test можно написать все что угодно, я не буду это здесь перечислять)
Метод m = Test.class.newInstance().getClass().getDeclaredMethod("Имя метода", getMethodParamTypes(Test.class.newInstance(),"Имя метода"));