[SerializableAttribute] [DebuggerDisplayAttribute("Count = {Count}")] public class List<T> : IList<T>, ICollection<T>, IEnumerable<T>, IEnumerable, IList, ICollection, IReadOnlyList<T>, IReadOnlyCollection<T>
这是List<T>的申明,它继承了多个接口,本人的问题是,为什么既继承了IList<T>,又继承了 ICollection<T>,IEnumerable<T>等接口呢?
public interface IList<T> : ICollection<T>, IEnumerable<T>, IEnumerable
看 IList<T>,不就是继承了ICollection<T>,IEnumerable<T>吗?莫非就是为了多写几个显式接口实现吗?
真心请教,请告知。
解决方案
10
主要是为了看着方便,不然要一层一层翻接口的继承列表才知道类继承了什么东西。
10
关于这个的讨论,其实就是提高可读性
http://www.cnblogs.com/allenlooplee/archive/2004/11/16/64394.html
http://www.cnblogs.com/allenlooplee/archive/2004/11/16/64394.html