反射的使用场景、作用及优缺点?


使用场景

  • 在编译时无法知道该对象或类可能属于哪些类,程序在运行时获取对象和类的信息

 

作用

  • 通过反射可以使程序代码访问装载到 JVM 中的类的内部信息,获取已装载类的属性信息、方法信息

 

优点

  • 提高了 Java 程序的灵活性和扩展性,降低耦合性,提高自适应能力。
  • 允许程序创建和控制任何类的对象,无需提前硬编码目标类
  • 应用很广,测试工具、框架都用到了反射

 

缺点

  • 性能问题:反射是一种解释操作,远慢于直接代码。因此反射机制主要用在对灵活性和扩展性要求很高的系统框架上,普通程序不建议使用
  • 模糊程序内部逻辑:反射绕过了源代码,无法再源代码中看到程序的逻辑,会带来维护问题
  • 增大了复杂性:反射代码比同等功能的直接代码更复杂

 

 

  

来一道刷了进BAT的面试题?


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM