Java反射

一、什么是反射?

      反射就是将一个类中的成员属性,构造方案,成员方法制成Class类对象,在程序运行时动态操纵类对象的过程。

二、作用:注解的实现原理,框架设计的灵魂

           1 使用类对象实现扩展功能,

           2 可以枚举出属性构造器方法,帮助开发人员更好的工作写代码

           3测试的时候翻译访问私有变量,保证测试覆盖率

三、如何获取Class类对象

Class 变量名 = 以上三种方式; 

 四、利用Class类对象获取类中的内容

        1、成员属性Field

Field[] fields  =  Class变量名.getFields()      获取public修饰的属性

Field[] fields  =  Class变量名.getDeclaredFields()           获取所有类型的属性,private的也可以

Field[] fields  =  Class变量名.getDeclaredFields( 类型)       当其中有参数时,使用返回的若是private的属性会报错,必须在此之后添加  fields.setAccessable(true); 表示忽略访问修饰符

     

        2  构造器        (创建对象) 

Constructor constructor = 类名.getConstructor();         获取构造器

Object 对象 = constructor. newInstance();            创建对象有参无参都可以

Object 对象 = 类名.newInstance();        无参使用

        3、成员方法

成员方法获取与上述相同

主要是由一个执行成员方法的方法           :method.invoke()方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值