Переходя к деталям реализации, я вижу реализацию класса Array
как
public abstract class Array : ICloneable, IList, ICollection, IEnumerable, IStructuralComparable, IStructuralEquatable
Реализация интерфейса IList читается как
public interface IList : ICollection, IEnumerable
Мой вопрос в том, что класс Array
автоматически реализует ICollection
и IEnumerable
момент, когда он реализует IList
? Почему они реализованы явно?