文章來源:http://hollischuang.gitee.io/tobetopjavaer/#/basics/java-basic/reflection
反射
反射機制指的是程序在運行時能夠獲取自身的信息。在java中,只要給定類的名字,那么就可以通過反射機制來獲得類的所有屬性和方法。
反射有什么作用
在運行時判斷任意一個對象所屬的類。
在運行時判斷任意一個類所具有的成員變量和方法。
在運行時任意調用一個對象的方法
在運行時構造任意一個類的對象
Class類
Java的Class類是java反射機制的基礎,通過Class類我們可以獲得關于一個類的相關信息
Java.lang.Class是一個比較特殊的類,它用于封裝被裝入到JVM中的類(包括類和接口)的信息。當一個類或接口被裝入的JVM時便會產生一個與之關聯的java.lang.Class對象,可以通過這個Class對象對被裝入類的詳細信息進行訪問。
虛擬機為每種類型管理一個獨一無二的Class對象。也就是說,每個類(型)都有一個Class對象。運行程序時,Java虛擬機(JVM)首先檢查是否所要加載的類對應的Class對象是否已經加載。如果沒有加載,JVM就會根據類名查找.class文件,并將其Class對象載入。