反射机制学习笔记

学习java反射两天了,刚开始很迷糊,感觉不好理解,通过重复观看视频和做练习,总算有点感觉了.

反射,顾名思义,是一种映射关系,它将对象的类属性以及类中的各种元素提取出来,映射成各种类

通过这些类可以了解原始对象或原始类中的各种信息,进一步的,可以通过反射更改原始数据.

 

学习反射机制,主要学习了以下几个类:

1.Class

       就是类反射过来的一种类,有点拗口,比如String是一种类,它加载到JVM中会反射为String.class的类

       得到Class类型的实例有以下几种方法:

                类名.class,例如,System.class
                对象.getClass(),例如,new Date().getClass()
                Class.forName("类名"),例如,Class.forName("java.util.Date");
                ClassLoader对象的loadClass()方法

2.Constructor
        对应的就是构造器的类型

        获取方法:getConstructor();返回公共构造方法,意思是私有的得不到

                         getConstructors();返回构造方法数组,私有的得不到

                         getDeclaredConstructor();返回构造方法,私有的也可得到

                         getDeclaredConstructors();返回构造方法数组,私有的也可得到

3.Field
        对应的反射的字段可能是一个类(静态)字段或实例字段。

        获取字段的方法有getField();和getDeclaredField();前者不能取得私有属性的字段,后者可以,再通过setAccessible()方法,

        就可以修改私有属性字段的数据,被称为:暴力反射

4.Method
        方法的类型,反映的方法可能是类方法或实例方法(包括抽象方法)。

        获取方法和获取Constructor类似,不再覆述.

 

---------------------- android培训java培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net/heima

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值