可能的情况有:从一个类继承,从一个或多个接口继承,从一个类和一个或多个接口继承。íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
使用Type类的BaseType属性来取得类从哪个类继承。GetInterfaces方法来取得类都实现了哪些接口。íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
测试代码如下:íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
类库代码:íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
using System;íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
namespace GetInterfaceíÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
public class Class1 : Class2,BaseInterface,BaseInterface1íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
public Class1()íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
  íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
  }
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
public void aaa()íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
  Console.WriteLine(
"It's aaa");íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
  }
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
public void bbb()íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
  Console.WriteLine(
"It's bbb");íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
  }
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
}
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
public class Class2íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
public Class2()íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
  }
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
}
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
interface BaseInterfaceíÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
void aaa();íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
}
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
interface BaseInterface1íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
 
void bbb();íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
}
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
}
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
在winform下显示调用显示:íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
Type type = typeof(GetInterface.Class1);íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
Type[] typeInterface
= type.GetInterfaces();íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
foreach ( Type t in typeInterface )íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
{íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
   
this.listBox1.Items.Add(t.ToString());íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
}
íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
Type typeBaseClass
= type.BaseType;íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ
this.listBox1.Items.Add ( typeBaseClass.ToString());íÉ ò±?Cçwww.netcsharp.cnMá!¿WeëßfÈ