Почему мы реализуем интерфейсы рекурсивно?

Я понимаю, что любой Набор (здесь говорю об обычном недженерике), должен был реализовать ICollection, IEnumerable и IList упаковывают регулярного объектного набора или IDictionary в случае Словарей.

[Однако, вопрос, который я задаю, не характерен для наборов]

IList получен из ICollection и IEnumerable

ICollection получен из IEnumerable

Не как раз сделать набор (Например, ArrayList) реализуют IList?

В Обозревателе объектов это отображает тот набор, классы (Например, ArrayList) реализуют IList, ICollection и IEnumerator.

Я понимаю, что, даже если мы указываем все три Набора, .NET собирается принять определения только однажды.

Но мой вопрос,

  1. Есть ли какая-либо лучшая практика или рекомендация, которая ведет нас для определения всех трех интерфейсов для класса набора (Или какого-либо класса, подобного этому)?

  2. Или это - просто propery Обозревателя объектов, который отображает его как 3 отдельных реализации? [Просто проверенный и найденный, что не свойство Обозревателя объектов. Обозреватель объектов просто отображает интерфейсы, которые указаны в определении класса]

6
задан David Basarab 16 August 2010 в 19:37
поделиться