概述
若一个类中未定义默认的构造方法,当通过反射的机制这个类的实例会报下面的错误:
Exception in thread "main" java.lang.[b]InstantiationException
做反射机制时,调用无参的构造方法:
Class class1 = Class.forName(className);
Object o1 = class1.newInstance();(调用默认的构造方法)
做反射机制时,调用有参数的构造方法:
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) ;
最后
以上就是爱笑小丸子为你收集整理的java 反射无参方法_无参构造方法 ? 反射的全部内容,希望文章能够帮你解决java 反射无参方法_无参构造方法 ? 反射所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复