黑马程序员技术交流社区

标题: 反射和可变参数 [打印本页]

作者: 兜兜转转    时间: 2013-8-31 08:23
标题: 反射和可变参数
我发现在发射这一块使用到的可变参数是最多的,但是我想请问,假如我要用反射一个无参数的构造方法,用可变参数怎么写呢?

作者: 月黑风高    时间: 2013-8-31 09:17
class.newInstance方法内部是反射类无参的构造函数的对象!
sun公司为简化开发人员创建对象,它在class对象中也提供了一个newInstance方法,用于创建类的对象,这样开发人员可以避免每次都需要去反射Constructor类以创建对象。利用此种方式创建类对象时,类必须有一个无参的构造函数,否则编译失败。
作者: 兜兜转转    时间: 2013-8-31 09:33
月黑风高 发表于 2013-8-31 09:17
class.newInstance方法内部是反射类无参的构造函数的对象!
sun公司为简化开发人员创建对象,它在class对象 ...

说错了,是无参数的方法

作者: 月黑风高    时间: 2013-8-31 09:45
下面是一般方法的步骤:(没有写带返回值的,私有的和静态方法)
                //1.加载类,一定要写全名称,包名.类名
                Class clazz=Class.forName("Person");
               
                //2.解剖方法,两个参数:方法名称,方法参数类型,空参为null,也可省略不写
                Method method=clazz.getMethod("aa1",null);
               
                //3.方法调用,两个参数:那个对象调用传那个对象,空参数为null,也可省略不写
                Person p=new Person();
                method.invoke(p,null);


作者: 薛鹏鹏    时间: 2013-8-31 14:08

如果您的问题已经解决
请更改分类未解决为已解决
保持队形,谢谢合作

详情参考 如何修改分类






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