当我在ArrayList关键字上按f12转到从vs2008生成的元数据时,我发现生成的类声明如下
public class ArrayList : IList, ICollection, IEnumerable, ICloneable
Run Code Online (Sandbox Code Playgroud)
我知道IList已经从ICollection和IEnumerable继承了,那么为什么ArrayList会冗余地从这些接口继承呢?
继承是C#中的传递关系吗?
我问,因为我不明白为什么IList<T>器具ICollection<T>和IEnumerable<T>作为ICollection<T>已经实现IEnumerable<T>
谢谢你为我澄清这一点.