Java高級特性之反射(流行框架都用到)

一、基本知識點:

      1、反射的概念和應用場合;

      2、如何應用反射獲取類的信息(反射的入口);

      3、通過反射,則可以運行時生成對象實例、運行期間調用方法、運行時更改屬性值;

      4、如何利用反射來動態創建和訪問數組。

二、知識點導入:(java是動態語言嗎?)

      通常情況下,java在運行時是不能改變程序結構和變量類型,從這一點來看,java不是動態語言(和C++一樣);

     但是,java有一個非常突出的動態相關機制:反射。

     通過反射,java可以於運行時加載、探知和使用編譯期間完全未知的類,生成其對象實體,調用其方法和對屬性設置。所以,從這一點來看,java是一個半動態的語言。

三、java語言反射機制概述:

     1、重要性: 反射機制是構建框架技術的基礎所在,靈活掌握,爲框架技術打基礎。

     2、什麼是java語言的反射機制?

      java程序在運行狀態(指的是在運行時,而不是編譯時)中:

          對於任意一個類,都能夠知道這個類的所有屬性和方法(也就是能夠探知類的結構);

         對於任何一個對象,都能調用它的任意一個方法;

    這種動態獲取信息以及動態調用對象方法的功能,就是java語言的反射機制。

例如,在Eclipse環境中,在一個對象後面輸入“.”後,Eclipse就會自動將該對象的所有方法羅列出來以供選擇,這就用到了java的反射機制。

3、java反射機制的動態性質:

    A、運行時生成對象實例;

    B、運行期間調用方法;

    C、運行時更改屬性。

4、java反射可以實現什麼功能?

   A、在運行時判斷任意一個對象所屬的類;

   B、在運行時構造任意一個類的對象;

   C 、在運行時判斷任意一個類具有的方法和屬性;

   D、在運行時調用任意一個對象的方法;

   E、生成動態代理。

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