通過反射 根據指定類名建立物件 帶參 不帶參

2021-10-07 00:09:54 字數 845 閱讀 5899

1、不帶引數的情況

首先得到該類的class物件,再呼叫newinstance方法即可得到空引數列表的例項

public static void main(string args) throws exception
輸出結果為:

2、帶引數傳遞的情況

public static void main(string args) throws exception
輸出結果為:

person 類:
import com.cloud.testent;
public class person 

public testent test(testent obj)

public void test()

}

testent類:
package com.cloud;

import lombok.data;

/** * @author kinghao

* @version 1.0

* @classname testent

* @description

* @date 2020/6/9 18:51

* @description

*/@data

public class testent

參考文章:

C 實現反射 根據類名動態建立物件

和網上大多數實現一樣,這裡也是採用工廠方法來實現物件的動態建立。大致原理為,建立乙個單例工廠類,其中維護乙個map 類名 物件建立函式 建立物件時,傳入類名,然後根據此類名查詢出建立函式,最後建立物件。採用這種方式,有乙個關鍵問題,便是在工廠中註冊類名。我們的辦法是針對於每乙個類 class 定義乙...

C 利用反射根據類名建立類的例項物件

反射 其實就是利用程式集的元資料資訊。反射可以有很多方法,編寫程式時請先導入 system.reflection 命名空間。1 假設你要反射乙個 dll 中的類,並且沒有引用它 即未知的型別 assembly assembly assembly.loadfile 程式集路徑,不能是相對路徑 引導程式...

C 利用反射根據類名建立類的例項物件

1 假設你要反射乙個 dll 中的類,並且沒有引用它 即未知的型別 assembly assembly assembly.loadfile 程式集路徑,不能是相對路徑 引導程式集 exe 或 dll dynamic obj assembly.createinstance 類的完全限定名 即包括命名空...