反射 建立物件 呼叫方法

2021-09-11 23:26:27 字數 771 閱讀 3605

通過反射建立物件的思路:

1.首次獲取類的類物件,獲取方式看前一篇部落格。

2.呼叫類物件的newinstance()方法建立該類的實體物件。這是呼叫的類的預設構造器。

若想呼叫非預設的構造器建立例項物件,需要先通過class物件獲取構造器,在用構造器呼叫newinstance()方法建立。

例子:建立乙個物件池,讀取property檔案,建立物件,spring依賴注入的基本原理也是這樣實現

呼叫方法為物件注入屬性(注入):

呼叫步驟:

獲取方法名和引數

獲取該方法的method方法

執行method.invoke(target,args);target為執行物件,即該類的例項物件,後面為引數

讀取的檔案檔案內容:

補充:方法有訪問許可權,可以通過method.setaccessible(boolean flag)設定呼叫該方法時是否檢查訪問許可權,設為false則可以訪問private方法。

通過反射動態建立物件 方法

之前做的都是獲取特性物件,都是查元資料的資訊,現在我們可以通過反射開始動態的去建立物件和方法 1.兩種呼叫無參建構函式的方法 建立乙個democlass,裡面有無參建構函式和有參建構函式 public class democlass public int age public democlass p...

反射機制 呼叫方法

通過反射機制,呼叫乙個物件的方法 獲取成員方法 public method getmethod string name,class.parametertypes 獲取單個公共成員方法 public method getdeclaredmethod string name,class.paramete...

通過反射動態建立物件執行的方法

public class test09 總結 通過class物件.newinstance 是呼叫的物件的無參構造,要是該物件沒有無參構造,就不能創造物件 通過class物件先去獲取構造方法,再通過構造方法.newinstance 傳入對應的引數 可以走有參構造和無參構造 通過反射獲取的方法可以通過方...