黑马程序员技术交流社区

标题: 反射中构造函数传递参数的问题 [打印本页]

作者: Walking Walking    时间: 2013-3-27 22:53
标题: 反射中构造函数传递参数的问题
本帖最后由 徐盼盼 于 2013-3-28 09:39 编辑

在学习反射的时候,讲到直接通过Class.newInstance()方法创建对象,那么存在多个构造函数的情况下怎么传递参数呢?
如何创建对象的呢?
如下代码
Demo ts1=(Demo) Class.forName("com.itheima.Demo").newInstance();


作者: itserious    时间: 2013-3-27 23:16
那么存在多个构造函数的情况下怎么传递参数呢?
如何创建对象的呢?
看下面代码吧,你要先通过字节码获得构造函数,才可以创建对象。

Class<Person> clazz=Person.class;//获得Person的字节码。
               
                //通过Person的字节码,获得带指定参数类型的构造函数,再调用newInstance()方法,创建对象。
                Person p= clazz.getConstructor(String.class).newInstance("张三");
                System.out.println(p.toString());
作者: Walking Walking    时间: 2013-3-28 09:38
明白了谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2