1. 程式人生 > >【C#學習筆記】反射的簡單用法

【C#學習筆記】反射的簡單用法

常見的使用反射的場景:
程式在執行時動態地訪問類的成員,如獲得類的變數、方法。

例如:用反射給本類的變數賦值。

public class Student{
    public string studentName = "小王";
    public void Test()
    {
        Type type = this.GetType(); // 獲得本類的型別
        PropertyInfo propertyInfo = type.GetProperty("studentName"); // 獲得本類的成員變數
        propertyInfo.SetValue(this
, "老王"); // 修改本類的成員變數 } }

上面的程式碼,執行Test()方法後,能夠重新給本類的變數賦值。通常經過別的操作得到新的值,然後將新的值做為引數傳入該方法。

使用反射和泛型,可以使得介面類的設計通用型更強,但會降低程式碼可讀性。報錯時得Debug來一步步除錯來看執行時反射得到是資料型別。

其他反射使用場景:獲得類的方法並呼叫等。

學習: