文档章节

无参构造方法 ? 反射

八戒_o
 八戒_o
发布于 2015/11/11 23:26
字数 162
阅读 271
收藏 0

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

    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) ;







© 著作权归作者所有

共有 人打赏支持
八戒_o
粉丝 22
博文 123
码字总数 43412
作品 0
成都
程序员
Java基础--反射机制的知识点梳理

什么是反射?   正常编译执行java文件时,会生成一个.class文件,反射就是一个反编译的过程,它可以通过.class文件得到一个java对象.一个类会有很多组成部分,比如成员变量,成员方法,构造方法等...

冬至饮雪
2016/03/27
0
0
Num27反射,jdk新特性(传智视频)

获取class文件对象的三种方式 通过反射获取无参构造方法并使用 通过反射获取私有构造方法并使用 通过反射获取私有构造方法并使用 通过反射获取成员变量并使用 通过反射获取无参无返回值成员方...

萧小蚁
2016/02/24
63
0
java基础学习_反射、装饰模式、JDK新特性_day27总结

java基础学习反射、装饰模式、JDK新特性day27总结 ==================================================================================================================================......

黑泽明军
04/12
0
0
java基础-反射技术(磨砺营马剑威java)

在Java运行时环境中,对于任意一个类,能否知道这个类的哪些属性和方法?对于任意一个对象,能否调用它的任意一个方法?答案是肯定的。这种动态获取类的信息以及动态调用对象的方法的功能来自...

磨砺营
2016/08/19
37
0
No default constructor for entity Java无参构造函数

异常 org.hibernate.InstantiationException: No default constructor for entity 当查询的时候返回的实体类是一个对象实例,是hibernate动态通过反射生成的 反射的Class.forName("classNam...

李超
2015/06/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

ZOOKEEPER安装记录

本文借鉴了链接的内容,但是有几部分需要注意: 下载zookeeper的位置是:连接; 执行这两部,得再root下,sudo不能用,还不知道为啥。

恰东
2分钟前
0
0
解决你的无线路由器被蹭网烦恼

教你几招提高无线路由器的安全性-再也不用担心蹭网了。随着无线网络的普及,无线网络的安全问题越来越严重。本文教你几招提高家用无线路由器的安全性,再也不用担心蹭网了。 随着无线网络的普...

linuxprobe16
7分钟前
0
0
分布式系统消息中间件—RabbitMQ的使用进阶篇

前言: 这篇文章主要总结一下RabbitMQ在日常项目开发中比较常用的几个特性。 一。 mandatory 参数 上一篇文章中我们知道,生产者将消息发送到RabbitMQ的交换器中通过RoutingKey与BindingKey的...

Java干货分享
7分钟前
0
0
RabbitMQ清除队列中的所有消息

最近在研究 RabbitMQ 消息队列,安装好进行测试的时候发觉在一个名为 MyRabbitMQ 的消息队列中已经插入了大量的数据。 最后不得不找方法清除。 linux或者windows 输入命令: rabbitmqctl li...

覃大光
11分钟前
0
0
java equals和==的区别

public class StaticDemo { public static void main(String[] args) { /** * 1、包装类的“==”运算在未遇到算术运算的情况下不会自动拆箱(堆中存储的地址是否相同,即栈中的内容是否相同)...

恋码之子
15分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部