黑马程序员技术交流社区

标题: 关于反射的问题 [打印本页]

作者: 821728010    时间: 2013-6-4 00:28
标题: 关于反射的问题
本帖最后由 821728010 于 2013-6-5 20:15 编辑

这段代码运行时为什么会报错?   

import java.lang.reflect.Constructor;


public class Bzsrsc {
        public static void main(String[] args)throws Exception {
               
//                A a = A.class.newInstance();
//                System.out.println(a.i);
                Constructor con = A.class.getConstructor();
                A a = (A)con.newInstance();
                System.out.println(a.i);
                }
        }
        


class A{
         
        int i = 1;
}        
        

作者: 紫衣侯    时间: 2013-6-4 15:27
Class类中的newInstance()方法不带参数可以直接使用,而Constructor类中的newInstance()方法必须带参数,一般用来反射带参的构造器
作者: 袁梦希    时间: 2013-6-4 20:18
加油!
作者: tshch1989    时间: 2013-6-4 22:00
A.class.getConstructor();此处你没有获取到构造方法,此方法只能获取到public修饰的构造方法;使用这个方法就能获取到A.class.getDeclaredConstructor()




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