如果创建对象不要参数,可以用Class对象的newInstance()来实现。
如果要参数的话,就要根据参数类型找到构造函数,再用构造函数来创建了。
import java.lang.reflect.*; public class constructor2 { public constructor2() {} public constructor2(int a, int b) { System.out.println("a = " + a + " b = " + b); } public static void main(String args[]) { try { Class cls = Class.forName("constructor2"); Class partypes[] = new Class[2]; partypes[0] = Integer.TYPE; partypes[1] = Integer.TYPE; Constructor ct = cls.getConstructor(partypes); Object arglist[] = new Object[2]; arglist[0] = new Integer(37); arglist[1] = new Integer(47); Object retobj = ct.newInstance(arglist); } catch (Throwable e) {System.err.println(e);} } }