反射的使用場景、作用及優缺點?


使用場景

  • 在編譯時無法知道該對象或類可能屬於哪些類,程序在運行時獲取對象和類的信息

 

作用

  • 通過反射可以使程序代碼訪問裝載到 JVM 中的類的內部信息,獲取已裝載類的屬性信息、方法信息

 

優點

  • 提高了 Java 程序的靈活性和擴展性,降低耦合性,提高自適應能力。
  • 允許程序創建和控制任何類的對象,無需提前硬編碼目標類
  • 應用很廣,測試工具、框架都用到了反射

 

缺點

  • 性能問題:反射是一種解釋操作,遠慢於直接代碼。因此反射機制主要用在對靈活性和擴展性要求很高的系統框架上,普通程序不建議使用
  • 模糊程序內部邏輯:反射繞過了源代碼,無法再源代碼中看到程序的邏輯,會帶來維護問題
  • 增大了復雜性:反射代碼比同等功能的直接代碼更復雜

 

 

  

來一道刷了進BAT的面試題?


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM