【发布时间】:2011-03-25 02:34:32
【问题描述】:
在 FCL 中考虑这个接口:
public interface IList<T> : ICollection<T>, IEnumerable<T>, IEnumerable
它告诉我们:接口IList<T> [XXX] 3 个接口:IConnection<T>、IEnumerable<T> 和IEnumerable。我对 [XXX] 有一些选择:
(1) 派生自/继承
此选项来自 C# 语言规范(但不是直接),其中“多继承接口”一词出现了一些时间。我不喜欢它的原因:使用“继承”这个词,我们有:IEnumerable<T> 继承了IEnumerable,ICollection<T> 继承了IEnumerable<T> 和IEnumerable,然后IList<T> 继承了这三个。出了点问题,但我说不出来,感觉很糟糕。
(2) 实现
这也不是一个好的选择。因为没有实现,所以只是契约。
(3) 别的什么?我想知道
你的想法是什么?
【问题讨论】:
-
Em..投票结束...也许我应该在english.stackexchange.com上问这个问题?
-
+1 支持以防止关闭。 IMO 这是一个关于术语的有效编程问题。
标签: c# .net interface multiple-inheritance