在java中我以字符串的形式知道了类的路径和里面方法名及参数个数,怎么才能执行这个类

来源:百度知道 编辑:UC知道 时间:2024/05/26 10:07:29
就是在java程序中我以字符串的形式得到了一个类的路径,类名和其中一个方法的名字和需要的参数,我要怎么才能在程序里执行这个方法?

import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;

class Test{
public static void main(String[] args) {
//知道类的名称
String methodName = "eat";//方法名字
String methodAglet = "苹果";//方法参数
try {

Object obj = Class.forName("Dog").newInstance();
if(obj.equals(null))return;
Method[] methods = obj.getClass().getMethods();
int i = 0;
for (i = 0; i < methods.length; i++) {
if(methods[i].getName().equals(methodName)) break;
}
methods[i].invoke(obj, new Object[]{methodAglet});
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.prin