gpt4 book ai didi

c# - 如何判断一个类是否实现了特定的接口(interface)

转载 作者:行者123 更新时间:2023-11-30 13:09:59 25 4
gpt4 key购买 nike

假设我有一个类

interface ISampleInterface
{
void SampleMethod();
}

class ImplementationClass : ISampleInterface
{
// Explicit interface member implementation:
void ISampleInterface.SampleMethod()
{
// Method implementation.
}

static void Main()
{
// Declare an interface instance.
ISampleInterface obj = new ImplementationClass();

// Call the member.
obj.SampleMethod();
}
}

在编写如下代码之前,如何从 main 方法确定 ImplementationClass 类实现了 ISampleInterface

SampleInterface obj = new ImplementationClass();
obj.SampleMethod();

有什么办法....请讨论。谢谢。

最佳答案

is keyword是一个很好的解决方案。您可以测试一个对象是一个接口(interface),还是另一个类。你会做这样的事情:

if (obj is ISampleInterface)
{
//Yes, obj is compatible with ISampleInterface
}

如果你在运行时没有对象的实例,而是一个Type,你可以使用IsAssignableFrom:

Type type = typeof(ISampleInterface);
var isassignable = type.IsAssignableFrom(otherType);

关于c# - 如何判断一个类是否实现了特定的接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8552698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com