当前位置:首页 > 投稿 > 正文内容

Java重点基础:反射机制

福瑞号2023-01-18 19:13:16投稿130
一、什么是反射?
Java反射说的是在运行状态中,对于任何一个类,我们都能够知道这个类有哪些方法和属性。对于任何一个对象,我们都能够对它的方法和属性进行调用。我们把这种动态获取对象信息和调用对象方法的功能称之为反射机制。
二、反射的三种方式
这里需要跟大家说一下,所谓反射其实是获取类的字节码文件,也就是.class文件,那么我们就可以通过Class这个对象进行获取。
1、第一种方式
Java重点基础:反射机制-图1
这个方法其实是Object的一个方法,Class继承了Object,所以我们可以直接使用。
Java重点基础:反射机制-图2
2、第二种方式
Java重点基础:反射机制-图3
3、第三种
这里需要注意,通过类的全路径名获取Class对象会抛出一个异常,如果根据类路径找不到这个类那么就会抛出这个异常。
Java重点基础:反射机制-图4
那么这3中方式我们一般选用哪种方式呢?第一种已经创建了对象,那么这个时候就不需要去进行反射了,显得有点多此一举。第二种需要导入类的包,依赖性太强。所以我们一般选中第三种方式。
三、通过反射获取类的构造方法、方法以及属性
1、获取构造方法
Java重点基础:反射机制-图5
Java重点基础:反射机制-图6
结果:
Java重点基础:反射机制-图7
2、获取类属性
Java重点基础:反射机制-图8
Java重点基础:反射机制-图9
结果
Java重点基础:反射机制-图10
这里需要注意,在获取私有属性的时候如果没有进行暴力反射,那么会抛出下面这个异常。
Java重点基础:反射机制-图11
3、获取类中的方法
先定义几个方法
Java重点基础:反射机制-图12
Java重点基础:反射机制-图13
正题
Java重点基础:反射机制-图14
Java重点基础:反射机制-图15
结果
Java重点基础:反射机制-图16
Java重点基础:反射机制-图17
这里需要注意的就是当一个方法需要传入多个参数值的时候,一定要注意。踩了一点坑。
四、反射执行main方法
Java重点基础:反射机制-图18
反射调用
Java重点基础:反射机制-图19
这里需要告诉大家,在导String包的时候千万要看清楚,我在这填了20多分钟的坑。
Java重点基础:反射机制-图20
五、总结
看到这里你已经对反射有了一个简单的了解,可以使用反射获取一些属性方法,其实我们平时写代码很少用到反射技术,但是在我们使用的一些主流框架中反射技术应用是非常广泛的,所以学好反射也是非常有必要的。
今天就写到这里,下篇给大家分享一下利用反射做一些有应用型的例子。

扫描二维码推送至手机访问。

版权声明:本文由福瑞号发布,如需转载请注明出处。

本文链接:http://www.furui.com.cn/42408.html

“Java重点基础:反射机制” 的相关文章

沈梦辰个人资料简介(3年过去了)

沈梦辰个人资料简介(3年过去了)

恋爱八年还不结婚,是时间不到?还是感情不够? 沈梦辰和杜海涛已经恋爱八年了!在如此复杂的娱乐圈里,一段长达八年的恋爱并不容易,网友刚开始对这段恋情也都充满了祝福,可随着时间的推移,却都从当初的祝福变成了如今的不看好。 自从三年前公开恋情后,沈梦辰便多次在节目中表达了想结婚的愿望,而家人、朋友也都...

2019年国庆放假调休(2019年国庆节放假时间确定:10月1日至7日放假一周)

2019年国庆放假调休(2019年国庆节放假时间确定:10月1日至7日放假一周)

人民网北京9月3日电 据北京市政府新闻办公室官方微博消息,2019年国庆节放假时间已确定,根据国务院办公厅通知精神,今年国庆节放假七天。放假时间如下:10月1日(国庆节)至7日放假一周;另9月29日(周日)和10月12日(周六)上班。...

《12海里等于多少公里(毛主席的硬核海权:中国规矩是12海里)

《12海里等于多少公里(毛主席的硬核海权:中国规矩是12海里)

中国虽然有句老话“吃亏是福”,但是在领土问题上,却不能如此,中国在领土上态度也十分坚定:寸土不让。因为在领土上的让步只会让入侵者认为中国好欺负、军事力量薄弱等。但是建国后的几年里,中国在海权问题上仍旧处于一片空白。 根据各国出台的规定,有的国家认为3海里作为领海宽度,有的国家认为12海里作为领海宽度...

迈克尔杰克逊小时候(迈克尔杰克逊:一个人灵魂有多洁白。)

迈克尔杰克逊小时候(迈克尔杰克逊:一个人灵魂有多洁白。)

我是记录生活的小小,点击右上方“关注”,每天为你分享不一样的故事。 全文共1820字,看到最后别忘了点赞、收藏,避免找不到。 一个人的灵魂有多洁白。 他是许多人心目中不可磨灭的神。 他的童年过得并不快乐,长大后的他却一直在治愈别人。 他就是迈克尔·杰克逊。 很多人认识迈克尔·杰克逊是因为他是美国的...

白求恩大夫来自哪个国家(他医者仁心)

白求恩大夫来自哪个国家(他医者仁心)

人们常说“海内存知己,天涯若比邻”,四海之内,知心朋友遍地,即使路途遥远他也仿佛近在眼前。这是形容人与人之间的友谊,以小见大,用来形容国与国之间的友谊也是十分恰当的。 患难见真情 除了“海内存知己”这句千古名言,还有一句话也可以形容友谊,那就是“患难见真情”,只有危难之中还能伸出援手的朋友才是真正...

kerastase(卡诗系列产品介绍)

kerastase(卡诗系列产品介绍)

Kérastase 卡诗是世界首位专业护发品牌,1964年在巴黎诞生,已有超过50年的历史。卡诗一直秉承高科技、高效能、高质量的宗旨,通过美发师超专业的双手,致力于间断的护发产品开发和奢华的个性化头皮头发护理的服务。想要体验一把品味法国文化的精致与奢华,试试它就知道了。然而卡诗家的洗护系列种类繁多,...