站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题如何用Class.forName方法动态加载构造方法带参数的类?

如何用Class.forName方法动态加载构造方法带参数的类?

摘要: 如何用Class.forName方法动态加载构造方法带参数的类?


我有一个叫A
public class A{

public A(String param1,String param2){

}

}

如何用Class.forName方法动态加载该类并在构造时把参数传递进去?请高手解答哈


利用java反射机制,举例如下:
import java.lang.reflect.Constructor;

/**
*
*/

/**
* @author dennis
*
*/
public class Test3 {
private String owner;

private int i;

public Test3() {
}

/**
* @param owner
* @param i
*/
public Test3(String owner, int i) {
super();
this.owner = owner;
this.i = i;
}

public int getI() {
return i;
}

public void setI(int i) {
this.i = i;
}

public String getOwner() {
return owner;
}

public void setOwner(String owner) {
this.owner = owner;
}

public static void main(String args[]) throws Exception {
Class clazz = Class.forName("Test3");
Constructor constructor = clazz.getConstructor(String.class, int.class); //构造函数参数列表的class类型
Test3 test = (Test3) constructor.newInstance("test", 1); //传参
System.out.println(test.getOwner());
}
}



考虑一下反射吧


↑返回目录
前一篇: JSP的简单问题
后一篇: 关于在jar包中的js文件