获取由C#中的当前Type实现或继承的所有接口

要获取当前Type实现或继承的所有接口,代码如下-

示例

using System;
public class Demo {
   public static void Main() {
      Type type = typeof(float);
      Type myInterface = type.GetInterface("IFormattable",true);
      Type[] myInterfaces = type.GetInterfaces();
      Console.WriteLine("Interface = "+myInterface);
      Console.WriteLine("All the Interfaces...");
      for (int i = 0; i < myInterfaces.Length; i++)
      Console.WriteLine(""+myInterfaces[i]);
   }
}

输出结果

这将产生以下输出-

Interface = System.IFormattable
All the Interfaces...
System.IComparable
System.IFormattable
System.IConvertible
System.IComparable`1[System.Single]
System.IEquatable`1[System.Single]

让我们看另一个例子-

示例

using System;
public class Demo {
   public static void Main() {
      Type type = typeof(int);
      Type myInterface = type.GetInterface("IFormattable");
      Type[] myInterfaces = type.GetInterfaces();
      Console.WriteLine("Interface = "+myInterface);
      Console.WriteLine("All the Interfaces...");
      for (int i = 0; i < myInterfaces.Length; i++)
      Console.WriteLine(""+myInterfaces[i]);
   }
}

输出结果

这将产生以下输出-

Interface = System.IFormattable
All the Interfaces...
System.IComparable
System.IFormattable
System.IConvertible
System.IComparable`1[System.Int32]
System.IEquatable`1[System.Int32]