先說說網上找到的把
反射=反向獲取jvm虛擬機器中的class類資訊
網上都說是jvm執行時擷取,反正我覺得有點用詞不當,應該是jvm在執行這個class類之前會對它掃瞄一片,如果發現了有用到反射或被反射就截停它,因為計算機執行時是一條線的結構,所以說,應該把反射執行說成jvm載入class後執行之前處理了反射,好吧,其實很多都不懂或許是想太多了吧
網上說獲取class中的通過class類的方法,並通過相應的方法返回乙個其他類的引用,把class中的各種屬性方法變數掛靠到另乙個類的物件上-----感覺思維是亂的
差不多吧,前面不是說了計算機執行是一條線結構嘛,本來原先沒加入反射的程式在jvm載入後就直接執行,但jvm檢測到有反射,就會終端,把控制權轉移到反射方法上
等於是在正要執行時突然中斷,執行線繞了個圈跑到其他的地方了,這應該就是網上的反射會影響執行效率的原因吧
這是正常的執行流程
這是反射執行路徑
先弄到這裡吧,感覺很多地方都有問題,要理解這問題,需要更多的知識來輔助,看來知識的積累很重要啊啊啊
關於反射學習
發射使用流程 1 通過 class.classforname 配置檔案中的路徑 獲取 位元組碼檔案 class clazz class.forname reflect.person 2 通過 clazz.getconstructor 引數型別 class 獲得 建構函式 constructor co...
反射的理解
反射 1 類的物件 依據我們定義的類 new 出來的物件,也成為例項物件 2 類物件 是類載入的產物,包括 包名,類名,屬性,方法,構造方法 獲取類物件 方式 通過反射的技術獲取類物件 會導致類先進行類載入 通過 類的物件 獲取 類物件 student s new student class c s...
反射的理解
class類物件的三種例項化模式 通過物件的確取得了物件的 這就是 反 的本質 在反射的世界裡它再看重的不再是乙個物件,而是物件身後的組成 類 構造 成員.取得class類物件的好處 可以直接通過反射例項化物件 newinstance public static void main string a...