Java中的反射机制

定义

框架设计的灵魂, 将类的各个组成成分封装成其他对象

三个阶段

  1. source源代码
  2. class类对象(反射机制),成员变量,构造方法,成员方法
  3. RunTime运行时阶段

好处

  1. 在程序运行中,操作这些对象
  2. 可以解耦,提高可拓展性

成员变量的操作过程

  1. 获取Person的class对象
  2. 获取field[]的值,这里是public对象
  3. 设置值:a.get(对象)
  4. 获取值:b.set(对象,“值”);
         Person person = new Person();
        Class personClass = Person.class;
        Field[] fields = personClass.getFields();
        for (Field field : fields) {
            System.out.println(field);
        }

        System.out.println("----------------------");
        Field field = personClass.getField("a");
        System.out.println(field);
        field.set(person,"Hello");
        System.out.println(field.get(person));


        System.out.println("=======================");
        Field[] declaredFields = personClass.getDeclaredFields();
        for (Field declaredField : declaredFields) {
            System.out.println(declaredField);
        }

        System.out.println("-----------------------");
        Field declaredField = personClass.getDeclaredField("d");
        declaredField.setAccessible(true);
        Object value = declaredField.get(person);
        System.out.println(value);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值