Java 反射,就是在運行狀態中。
- 獲取任意類的名稱、package信息、所有屬性、方法、注解、類型、類加載器等
- 獲取任意對象的屬性,並且能改變對象的屬性
- 調用任意對象的方法
- 判斷任意一個對象所屬的類
- 實例化任意一個類的對象
- Java 的動態就體現在這。通過反射我們可以實現動態裝配,降低代碼的耦合度;動態代理等。反射的過度使用會嚴重消耗系統資源。
JDK 中 java.lang.Class 類,就是為了實現反射提供的核心類之一。
獲取 Class 的方法 、一個 jvm 中一種 Class 只會被實例化一次。
