Lam*_*lex 4 .net c# collections inheritance interface
按照.NET API,类Dictionary<TKey, TValue>是继承自ICollection<T>,这里T是KeyValuePair<TKey, TValue>.Dictionary<TKey, TValue>该类如何隐藏它继承的一些方法ICollection<T>?
例如:
ICollection<T>有方法ICollection.Add(T item)
,但当你使用一个Dictionary<TKey, TValue>对象时,它没有该方法.你只能使用Dictionary<TKey, TValue>.Add(TKey key, TValue value).没有Dictionary<TKey, TValue>.Add(KeyValuePair<TKey,TValue> kvp)方法.
谁知道为什么?这些方法是如何隐藏的?
这是通过显式实现接口并使此实现私有/受保护来完成的
你总是可以施放Dictionary到ICollection,然后调用Add-尽管我不会这样做,因为我不知道它是否会工作...
| 归档时间: |
|
| 查看次数: |
894 次 |
| 最近记录: |