GetType、Typeof
Type
官网资料
IsAssignableFrom IsAssignableTo
在C#中,Type.IsAssignableFrom方法用于判断一个类型是否可以从另一个类型赋值。它检查源类型是否是目标类型的基类或接口。
isAssignableFrom(Class<?> c)
标识 “当前Class 是否是给定的 Class 的超类或者超接口”。是 返回true,否则返回false。
标识 “当前Class 是否与定的 Class 的相同”。是 返回true,否则返回false。
如果 “如果该 Class 表示一个基本类型,且指定的 Class 参数正是该 Class 对象”,是则返回true,否则放回false。
public interface IZen{}public Class Zen:IZen{}public Class Ares{}bool r1= typeof(IZen).IsAssignableFrom(typeof(Zen)); // Truebool r2= typeof(Zen).IsAssignableTo(typeof(IZen)); // Truebool r3= typeof(IZen).IsAssignableFrom(typeof(Ares)); // Falsebool r4= typeof(Ares).IsAssignableTo(typeof(IZen)); // False