您的位置:首页 > 其它

无参构造方法 ? 反射

2015-11-11 00:00 183 查看
若一个类中未定义默认的构造方法,当通过反射的机制这个类的实例会报下面的错误:

[b]Exception in thread "main" java.lang.[b]InstantiationException[/b]

做反射机制时,[b][b]调用无参的构造方法:[/b][/b]

Class class1 = Class.forName(className);

Object o1 = class1.newInstance();(调用默认的构造方法)



[b]做反射机制时,调用有参数的构造方法:
[/b]

Class cls = Class.forName(className);

Class[] paramTypes = { String.class, String.class, String.class,String.class };
Object[] params = {bankCde, branchCde, buzDate, loanNo}; // 方法传入的参数
Constructor con = cls.getConstructor(paramTypes); //主要就是这句
BatcherBase base = (BatcherBase) con.newInstance(params); //BatcherBase 为自定义类
注:BatcherBase 有构造函数如下
public BatcherBase(String bankCde, String branchCde, String buzDate,String loanNo) ;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: