Por que IEnumerable <T> herda de IEnumerable?

Essa pode ser uma pergunta antiga: por queIEnumerable<T> herdar deIEnumerable?

É assim que o .NET faz, mas traz um pequeno problema. Toda vez que escrevo uma classe implementaIEumerable<T>Eu tenho que escrever doisGetEnumerator() funções, uma paraIEnumerable<T> e o outro paraIEnumerable.

E,IList<T> não herda de IList.

Não sei porqueIEnumerable<T> foi projetado de outra maneira.

questionAnswers(4)

yourAnswerToTheQuestion