.NET 框架中的显式接口实现示例
本文关键字:显式接口实现 框架 NET | 更新日期: 2023-09-27 17:57:08
类可以从一个或多个接口派生。
如果多个接口具有具有相同签名的方法,则该类必须显式实现接口的此类成员。
到目前为止,根据我的经验,我从未遇到过必须从具有相同签名的方法的接口派生的情况。
在 .NET 框架或任何公开可用的库中是否有显式接口实现的示例?
字典
<键,值>显式实现ICollection<KeyValuePair<Key,Value>>
。实现泛型接口(如 IEnumerable<T>
)的类显式实现非泛型接口也很常见。
我认为最常见的情况是IEnumerable
和IEnumerable<T>
。
两者都声明了方法GetEnumerator()
。
这就是为什么在实现IEnumerable<T>
时,您总是有 2 个GetEnumerator()
方法来实现(IEnumerable<T>
继承自IEnumerable
):
public IEnumerator<T> GetEnumerator() // From IEnumerable<T> interface
{
// Code
}
IEnumerator IEnumerable.GetEnumerator() // From IEnumerable interface
{
// Code
}