C#反射の反射詳解(點擊跳轉)
C#反射の反射接口(點擊跳轉)
C#反射反射泛型接口(點擊跳轉)
C#反射の一個泛型反射實現的網絡請求框架(點擊跳轉)
上一篇中敘述了反射的情況,下面主要講一些反射的實際用途。
通過反射我們我可獲取接口,還可以獲取實現接口的類,此時接口的引用可以訪問實現類的實例。
我先定義了一個接口:
public interface IPerson { void SetName(string name); void SayHello(); }
定義類實現:
namespace people { public class People:IPerson { public string Name { set; get; } public string Sex { set; get; } public string Age { set; get; } public People(){} public People(string name) { Name = name; } public void SetName(string name) { Name = name; } public void SayHello() { Console.WriteLine("大家好,我是:"+Name); } } }
通過反射實現:
namespace ConsoleApp1 { class Program { static void Main(string[] args) { IPerson iperson = null; Assembly assembly = Assembly.Load("people"); Type[] types = assembly.GetTypes(); foreach (var t in types) { if (t.GetInterface("IPerson") != null) { iperson = (IPerson)Activator.CreateInstance(t); } } if (iperson != null) { iperson.SetName("彭禺厶"); iperson.SayHello(); } Console.ReadLine(); } } }
C#反射の反射詳解(點擊跳轉)
C#反射の反射接口(點擊跳轉)
C#反射反射泛型接口(點擊跳轉)
C#反射の一個泛型反射實現的網絡請求框架(點擊跳轉)