黑马程序员技术交流社区

标题: 对反射不晕的进来 [打印本页]

作者: 陈斌    时间: 2012-3-1 15:36
标题: 对反射不晕的进来
有谁对反射不晕的进来讲讲自己对其的理解、、、、、哥们我对它有点晕!
作者: 欧阳博    时间: 2012-3-1 16:01
本帖最后由 欧阳博 于 2012-3-1 16:02 编辑

JAVA反射可以说是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性。
我现在一般所用到的就是
(1)得到某个类所有的构造方法、Constructor con1  = 类名.class.getConstructor(String.class); //获得这个类的构造函数(这里是有个String类型参数的)
类 str = (类)con1.newInstance(new String("abc")); //创建一个实例对象
(2)得到类的成员变量属性,Field fieldY = str.getClass().getField("y"); //y是变量名
System.out.println(fieldY.get(str));  //得到str对象的fieldY属性值
(3)得到类中的某一个方法,Method method  = 类名.class.getMethod("方法名称",int.class); //int.class为该方法参数类型
调用它的方法  method.invoke(对象,参数值);

其他好多好多应用和方法建议楼主查询API




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