我查看了为IDictionary
接口生成的元数据,注意到它实现了
public interface IDictionary<TKey, TValue> : ICollection<KeyValuePair<TKey, TValue>>, IEnumerable<KeyValuePair<TKey, TValue>>, IEnumerable
这不是多余的吗?查看icollection
的元数据,可以发现它已经实现了IEnumerable
元数据显示了所有已实现的接口,特别是通过继承获得的接口。如果您查看IDictionary
的引用源,您会看到实际实现只实现icollection
:
public interface IDictionary<TKey, TValue> : ICollection<KeyValuePair<TKey, TValue>>