例如:
class Test{
public Test(String arg1,String arg2) {}
那么
Class c=Class.forName("Test");
Constructor con=c.getConstructor(new Class[] {"aaa".getClass(),"aaa".getClass()});
Test t=(Test)con.newInstance(new Object[] {"arg1","arg2"} ) ;
class Test{
public Test(String arg1,String arg2) {}
那么
Class c=Class.forName("Test");
Constructor con=c.getConstructor(new Class[] {"aaa".getClass(),"aaa".getClass()});
Test t=(Test)con.newInstance(new Object[] {"arg1","arg2"} ) ;
Class paramTypes[] = {
/* 你索要的构造函数所带参数的类型列表
比如参数是String和int两个,列表为{ String.class, int.class(或者Integer.TYPE) }
*/
};
Constructor cst = xxx.getConstructor(paramTypes);
Object paramValues[] = {
/* 你索要的构造函数所带参数的值列表,简单变量要用相应的包装类来传递参数
同上例,列表为{ "StringValue", Integer(10) }
*/
};
ClassOfvarName instance = cst.newInstance(paramValues);
当然,像楼上那样写比较省事,但是不易读