偶然在MSDN上看了一下IList<T>,ICollection<T>看到这两个接口的定义是:
public interface ICollection<T> : IEnumerable<T>, IEnumerable
public interface IList<T> : ICollection<T>, IEnumerable<T>, IEnumerable
注意ICollection<T>继承自IEnumerable<T>and IEnumerable,没关系。IList<T>继承自,ICollection<T>但为什么IList<T>必须再次继承?IEnumerable<T>IEnumerable
这有什么理由吗?