Class.newInstance调用no-
arg构造函数(不带任何参数的构造函数)。为了调用其他构造函数,您需要使用反射包(
java.lang.reflect)。
获取一个
Constructor这样的实例:
Class<?> cl = Class.forName("javax.swing.JLabel");Constructor<?> cons = cl.getConstructor(String.class);
的调用
getConstructor指定您要使用单个
String参数的构造函数。现在创建一个实例:
Object o = cons.newInstance("JLabel");
这样就完成了。
PS仅将反射用作最后的选择!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)