Определение интерфейса IList: «Представляет неуниверсальную коллекцию объектов, доступ к которым по индексу возможен индивидуально». Массив полностью удовлетворяет этому определению, поэтому должен реализовывать интерфейс. Исключением при вызове метода Add () является «System.NotSupportedException: Коллекция имела фиксированный размер», и это произошло из-за того, что массив не может динамически увеличивать свою емкость. Его емкость определяется при создании объекта массива.
ите определениеSystem.Array класс
public abstract class Array : IList, ...
Теоретически я должен быть в состоянии написать этот бит и быть счастливым
int[] list = new int[] {};
IList iList = (IList)list;
Я также должен иметь возможность вызывать любой метод из iList
ilist.Add(1); //exception here
Мой вопрос не в том, почему я получаю исключение, а скореепочему Array реализует IList?