如何理解Java的类反射机制?案例详解教i
2020-05-16 16:07:47来源:博客园 阅读 ()
如何理解Java的类反射机制?案例详解教i
反射:针对性地映射 某一个完整事务的行为或特征(单独操作类中任意内容)
1、反射机制 - 获取对象
-
什么是类对象?
类对象,就是用于描述这种类,都有什么属性,什么方法。
-
对象之前的区别?
gareen 和 teemo都是 Hero对象,他们的区别在于:各自有不同的名称、血量、技能。
-
类之间的区别?
Hero 和 soldier 都是类,他们的区别在于有:不同的方法,不同的属性。
-
获取类对象的3种方式
- Class.forName
- Hero.class
- new Hero().getClass()
package reflection; import charactor.Hero; public class TestReflection { public static void main(String[] args) { String className = "charactor.Hero"; try { Class pClass1=Class.forName(className); Class pClass2=Hero.class; Class pClass3=new Hero().getClass(); System.out.println(pClass1==pClass2); System.out.println(pClass1==pClass3); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
2、反射机制 - 访问属性
2.1、getField 和 getDeclaredField的区别
getDeclaredField: 获取本类所有字段(无视权限访问修饰符) 适用于获取当前类
getField:只能获取public字段,包括从父类继承来的字段 适用于获取父类public
3、反射固定步骤:
3.1、获取
- 1、获取对象 Class
- 2、通过类对象获取内容(成员方法、成员变量)
- 3、设置类外可用(暴力反射,private)
3.2、执行
- 1、通过类对象获取类的构造方法
- 2、通过构造方法创建对象
- 3、调用
最后注意:光理论是不够的。在此顺便送大家十套2020最新JAVA架构项目实战教程及大厂面试题库,进我扣裙 :七吧伞吧零而衣零伞 (数字的谐音)转换下可以找到了,还可以跟老架构师交流本文的文字及图片来源于网络加上自己的想法,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理
原文链接:https://www.cnblogs.com/chengxuyuanaa/p/12899509.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系: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