A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 与梦逆风而行 中级黑马   /  2014-12-2 17:31  /  1332 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1:反射的概念:
     JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制
        (1)类的加载及类加载器
        (2)反射:
                通过字节码文件对象,去使用成员变量,构造方法,成员方法
        (3)反射的使用
                A:通过反射获取构造方法并使用
                B:通过反射获取成员变量并使用
                C:通过反射获取成员方法并使用
        (4)反射案例
                A:通过反射运行配置文件的内容
                B:通过反射越过泛型检查
                C:通过反射给任意的一个对象的任意的属性赋值为指定的值
        
l获取构造方法

  getConstructors
  getDeclaredConstructors
l创建对象

  newInstance()

  con.newInstance(“zhangsan",20);
l获取所有成员

  getFields,getDeclaredFields
l获取单个成员

  getField,getDeclaredField
l修改成员的值



  set(Object obj,Object value)

   将指定对象变量上此 Field 对象表示的字段设置为指定的新值。

l获取所有方法

  getMethods
  getDeclaredMethods
l获取单个方法

  getMethod
  getDeclaredMethod
l暴力访问

  method.setAccessible(true);




评分

参与人数 1黑马币 +2 收起 理由
王小忠 + 2 赞一个!

查看全部评分

1 个回复

倒序浏览
反射在基础中用的不多,因为反射的原理感觉有点推翻java基础的知识, 只是几个案例或者面试题能遇到。但是到真正的项目开发的时候 很多框架都是用反射的。同学们要好好理解和学习反射:)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马