程式設計基礎 之 Reflection 反射是什麼
Tool to investigate objects, a tool to invoke method
在執行時,檢查 class
, interface
, fields
, method
資料和資訊,並且改變程式行為的程式設計技術。
反射和封裝之間的衝突
由於反射暴露程式細節的功能,暴露封裝的資訊,破壞了封裝的初衷;
但是封裝的功能是隱藏細節,增加開發時的效率;而反射是為了在執行時動態解決runtime 問題。
Reflection 的問題
- 效能問題,反射是一種解釋性的程式碼,會導致效能的降低。
- 複雜性,需要程式設計師維護更多的code
想要看到更多瑋哥的學習筆記、考試複習資料、面試準備資料?想要看到IBM工作時期的技術積累和國外初創公司的經驗總結?
image
敬請關注: