
文章插图
1、Java语言反射提供一种动态链接程序组件的多功能方法 。它允许程序创建和控制任何类的对象(根据安全性限制),无需提前硬编码目标类 。这些特性使得反射 特别适用于创建以非常普通的方式与对象协作的库 。例如,反射经常在持续存储对象为数据库、XML或其它外部格式的框架中使用 。Java reflection 非常有用 , 它使类和数据结构能按名称动态检索相关信息,并允许在运行着的程序中操作这些信息 。Java 的这一特性非常强大,并且是其它一些常用语言,如 C、C、Fortran 或者 Pascal 等都不具备的 。
2、但反射有两个缺点 。第一个是性能问题 。用于字段和方法接入时反射要远慢于直接代码 。性能问题的程度取决于程序中是如何使用反射的 。如果它作为程序运行中相 对很少涉及的部分,缓慢的性能将不会是一个问题 。即使测试中最坏情况下的计时图显示的反射操作只耗用几微秒 。仅反射在性能关键的应用的核心逻辑中使用时性 能问题才变得至关重要 。
【反射有什么作用 java反射机制有什么用】3、许多应用中更严重的一个缺点是使用反射会模糊程序内部实际要发生的事情 。程序人员希望在源代码中看到程序的逻辑,反射等绕过了源代码的技术会带来维护问 题 。反射代码比相应的直接代码更复杂,正如性能比较的代码实例中看到的一样 。解决这些问题的最佳方案是保守地使用反射——仅在它可以真正增加灵活性的地方 ——记录其在目标类中的使用 。
- 三星堆的面具有何作用 三星堆介绍
- 春节法定节假日是几天 国家节假日指的是什么
- 烫发后用什么护理
- 如何自己推头发技巧 推头发有哪些准备和步骤?
- 冬至自编七言诗 冬至的七言诗有什么
- 脸上毛孔变大且有黑色物质是什么
- 男人瘦肚子的最快方法有什么
- 晚上睡觉口干舌燥是怎么回事 口干舌燥是什么原因
- 去除体内湿气最快的药 去除体内湿气最快的药有哪些
- 水库泄洪是什么意思 水库泄洪的解释
