反射有什么作用
2024-07-21 23:13:33
1、Java语言反射提供一种动态链接程序组件的多功能方法。它允许程序创建和控制任何类的对象(根据安全性限制),无需提前硬编码目标类。这些特性使得反射 特别适用于创建以非常普通的方式与对象协作的库。例如,反射经常在持续存储对象为数据库、XML或其它外部格式的框架中使用。Java reflection 非常有用,它使类和数据结构能按名称动态检索相关信息,并允许在运行着的程序中操作这些信息。Java 的这一特性非常强大,并且是其它一些常用语言,如 C、C++、Fortran 或者 Pascal 等都不具备的。
2、但反射有两个缺点。第一个是性能问题。用于字段和方法接入时反射要远慢于直接代码。性能问题的程度取决于程序中是如何使用反射的。如果它作为程序运行中相 对很少涉及的部分,缓慢的性能将不会是一个问题。即使测试中最坏情况下的计时图显示的反射操作只耗用几微秒。仅反射在性能关键的应用的核心逻辑中使用时性 能问题才变得至关重要。
3、许多应用中更严重的一个缺点是使用反射会模糊程序内部实际要发生的事情。程序人员希望在源代码中看到程序的逻辑,反射等绕过了源代码的技术会带来维护问 题。反射代码比相应的直接代码更复杂,正如性能比较的代码实例中看到的一样。解决这些问题的最佳方案是保守地使用反射——仅在它可以真正增加灵活性的地方 ——记录其在目标类中的使用。
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
- 上一篇:导热硅脂材料对电器制造行业中有什么作用
- 下一篇:八宝茶怎么泡好喝
猜你喜欢
-
紫萱电视剧叫什么
阅读量:73 -
紫萱什么电视剧人物
阅读量:50 -
涤纶面料的衣服好吗
阅读量:44 -
彼岸花开什么意思
阅读量:82 -
道琼斯指数是什么意思
阅读量:60 -
攻克乃还是什么意思
阅读量:71 -
磨刀不误砍柴工什么意思
阅读量:63 -
梅干菜扣肉怎么做
阅读量:61 -
油菜炒香菇怎么做
阅读量:47 -
咖喱牛肉怎么做
阅读量:18
猜你喜欢
-
阅读量:48
-
阅读量:60
-
阅读量:30
-
阅读量:57
-
阅读量:63
-
阅读量:93
-
阅读量:13
-
阅读量:35
-
阅读量:72
-
阅读量:46