Этот вопрос пришел на ум после прочтения ответа на этот вопрос; который в основном сделал вывод, что List<T>
не имеет виртуальных методов, поскольку он был разработан как "быстрый, а не расширяемый".
Если это цель дизайна, почему первоначальный дизайн не включал в себя герметизацию? (Я знаю, что это невозможно сейчас, видя, как это сломает много дочерних классов в клиентском коде)