Наследование и реализация интерфейсов - C#

Узнай цену своей работы

Формулировка задачи:

Есть всем известный класс List<T>. Он должен реализовать интерфейс IList<T>, который в свою очередь наследует ICollection<T>.
Листинг программы
  1. [TypeDependency("System.SZArrayHelper")]
  2. public interface ICollection<T> : IEnumerable<T>, IEnumerable
  3. {
  4. int Count { get; }
  5. bool IsReadOnly { get; }
  6.  
  7. void Add(T item);
  8. void Clear();
  9. bool Contains(T item);
  10. System.Collections.Generic.ICollection<T>.
  11. bool Remove(T item);
  12. }
Вопрос -- почему List<T> не реализует bool IsReadOnly { get; }???

Решение задачи: «Наследование и реализация интерфейсов»

textual
Листинг программы
  1. public class List<T> : IList<T>, ICollection<T>, IList, ICollection,
  2. IReadOnlyList<T>, IReadOnlyCollection<T>, IEnumerable<T>, IEnumerable
  3. {
  4.     bool ICollection<T>.IsReadOnly
  5.     {
  6.       get
  7.       {
  8.         return false;
  9.       }
  10.     }
  11.  
  12.     bool IList.IsReadOnly
  13.     {
  14.       get
  15.       {
  16.         return false;
  17.       }
  18.     }
  19. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4.143 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут