Java反射学习总结
2018-12-27 07:42:09来源:博客园 阅读 ()
我开始学习反射的初衷是为了理解Spring 里的控制反转,其次可以利用反射来达到类中的解耦。 自己写的一些心得,希望能帮到大家
1.反射指的是对象的反向处理操作,是根据对象来取得对象的来源信息。
反射的核心是:将类编译的字节码映射成对应的Java类型
首先要理解,任何一个类的对象都可以通过Object类中的getClass()方法取得Class类对象
那么如何获取字节码呢?
- 第一 使用 Class.forName();
该方法返回的是一个Class 对象,这个方法大家是否熟悉呢? 对的在你链接数据库的时候加载Jdbc驱动的时候曾经用到过
说好听点叫做获取jdbc 驱动,难听点叫做加载字节码。
- 第二种: 使用已经现有的类.Class 方法
- 第三种则使用继承Object 类中的getClass 方法 此方法需要有一个现有的对象
我们可以利用反射做一些什么呢?
第一:获取package
第二:获取属性字段
获取多个数据字段与获取单个数据字段,这里做一个拓展。如何访问并且修改已经设置为私有的属性呢?
User类
我们可以看到其中的name属性是私有的
Test类
第三:获取构造器()通过构造器创建对象
通过构造器调用newinstance方法创建对象,注意此方法是可选列表,即可创建带参数或者不带参数的对象,
获取构造器的时候,传入构造器的参数为包装类型
第四:获取并且调用方法
User类
Test类
这是我这一段时间内学习反射的心得,在此也有一些话想要送给大家,知识是一个不断积累的过程,学习也如逆水行舟,可能在某一阶段,你并不明白你为什么要这么做,或者这么做的意义究竟是什么? 但是不要不做,慢慢的去积累下来。总有一天,良好的代码习惯以及重足的代码量,一定会在某一个项目,某一个Demo中 体现出来,上面是我写的内容,如果有不足 欢迎大牛指正。 加入群 大家可以一起交流 Q群:682677231
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 国外程序员整理的Java资源大全(全部是干货) 2020-06-12
- 2020年深圳中国平安各部门Java中级面试真题合集(附答案) 2020-06-11
- 2020年java就业前景 2020-06-11
- 04.Java基础语法 2020-06-11
- Java--反射(框架设计的灵魂)案例 2020-06-11
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash