(不懂就讨教)关于List 继承的接口

.Net技术 码拜 9年前 (2016-02-29) 973次浏览
[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

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明(不懂就讨教)关于List 继承的接口
喜欢 (0)
[1034331897@qq.com]
分享 (0)