在C#中,GetType()
方法用于獲取一個對象的類型信息。當你對一個對象調用GetType()
方法時,它會返回一個表示該對象類型的Type
對象。通過這個Type
對象,你可以獲取許多關于接口的信息,例如:
Name
屬性可以獲取接口的名稱。Type type = obj.GetType();
string interfaceName = type.Name;
BaseType
屬性可以獲取接口的基類(如果接口繼承自其他接口)。Type type = obj.GetType();
Type baseType = type.BaseType;
GetInterfaces()
方法可以獲取一個對象實現的所有接口。Type type = obj.GetType();
Type[] interfaces = type.GetInterfaces();
GetMethods()
方法可以獲取一個接口的所有方法(包括繼承自基類的方法)。Type type = obj.GetType();
Type interfaceType = type.GetInterface("IMyInterface");
MethodInfo[] methods = interfaceType.GetMethods();
GetProperties()
方法可以獲取一個接口的所有屬性(包括繼承自基類的方法)。Type type = obj.GetType();
Type interfaceType = type.GetInterface("IMyInterface");
PropertyInfo[] properties = interfaceType.GetProperties();
GetEvents()
方法可以獲取一個接口的所有事件(包括繼承自基類的事件)。Type type = obj.GetType();
Type interfaceType = type.GetInterface("IMyInterface");
EventInfo[] events = interfaceType.GetEvents();
請注意,GetType()
方法只能獲取到對象實現的接口信息,而不能獲取到對象本身實現的類方法或屬性。要獲取類的信息,你需要使用obj.GetType()
的替代方法,如obj.GetType().BaseType
。