java面試 - 反射機制

是什麼

  Java Reflaction in Action有這麼一句話,可以解釋。反射是運行中的程序檢查自己和軟件運行環境的能力,它可以根據它發現的進行改變。通俗的講就是反射可以在運行時根據指定的類名獲得類的信息。

反射是:指程序可以訪問、檢測和修改它本身狀態或行爲的一種能力

反射的好處是:可以在運行時確認對象以及方法。

爲什麼

  我們爲什麼要使用反射,它的作用是什麼,它在實際的編程中有什麼應用。

  首先我們先明確兩個概念,靜態編譯和動態編譯。

  靜態編譯:在編譯時確定類型,綁定對象,即通過。 
  動態編譯:運行時確定類型,綁定對象。動態編譯最大限度發揮了java的靈活性,體現了多    
  態的應用,有以降低類之間的藕合性。   

  我們可以明確的看出動態編譯的好處,而反射就是運用了動態編譯創建對象。

幹什麼

反射是一種能力,所以給的定義就是說明了它能幹嘛。

我們平時用反射主要做:

  • 獲取類型的相關信息
  • 動態調用方法
  • 動態構造對象
  • 從程序集中獲得類型。

 

參考:

http://www.cnblogs.com/jqyp/archive/2012/03/29/2423112.html

https://www.cnblogs.com/zhaopei/p/reflection.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章