📅  最后修改于: 2023-12-03 15:14:32.181000             🧑  作者: Mango
Type.FindInterfaces()
方法用于搜索当前 Type
对象所表示的接口,并返回与指定筛选条件匹配的接口数组。
该方法的语法如下:
public interface Type
{
Type[] FindInterfaces(TypeFilter filter, object filterCriteria);
}
其中,参数 filter
是一个 TypeFilter
委托,用于表示筛选条件,参数 filterCriteria
是一个可选的筛选标准,用于表示筛选条件的附加数据。
下面是一个简单的示例,用于演示如何使用 Type.FindInterfaces()
方法查找指定接口:
using System;
public interface IMyInterface
{
void MyMethod();
}
public class MyClass : IMyInterface
{
public void MyMethod()
{
Console.WriteLine("MyClass.MyMethod() is called.");
}
}
public class Example
{
public static void Main()
{
Type type = typeof(MyClass); // 获取 MyClass 类型
Type[] interfaces = type.FindInterfaces(
(t, c) => t.Name == "IMyInterface", // 筛选条件
null);
Console.WriteLine("MyClass 实现的接口为:");
foreach (Type i in interfaces)
{
Console.WriteLine(i);
}
}
}
在上面的示例中,我们定义了一个接口 IMyInterface
和一个实现该接口的类 MyClass
。然后,我们使用 Type.FindInterfaces()
方法查找 MyClass
实现的接口,并输出到控制台上。在筛选条件中,我们指定了查找 Name
属性值为 "IMyInterface"
的接口。
上面代码的输出结果如下:
MyClass 实现的接口为:
IMyInterface