有人会解释这两种野兽之间的区别以及如何使用它们。在AFAIK中,许多2.0版之前的类都是在没有泛型的情况下实现的,因此导致后者的版本同时实现两种接口。这是为什么唯一需要使用它们的情况?
您还可以深入解释如何使用它们吗?
谢谢
基本上,通过隐式接口实现,您可以访问接口方法和属性,就像它们是类的一部分一样。使用显式接口实现,您只能在将其视为该接口时访问它们。
就何时使用另一个接口而言,有时您必须使用显式接口实现,因为您要么具有与接口具有相同签名的属性/方法,要么想要实现具有相同签名的两个接口并具有不同的实现那些匹配的属性/方法。
以下规则来自Brad Abrams设计指南博客。
在布拉德(Brad)博客的评论中还提到,在对值类型使用显式实现时涉及拳击,因此请注意性能成本。