Страницы

Поиск по вопросам

суббота, 14 декабря 2019 г.

C# различие List<T> и Collection<T>

#c_sharp #list #generics


В чем различие между List и Collection. Где и при каких условиях будет рациональнее
использовать тот или другой тип?
    


Ответы

Ответ 1



Разница в том, что в Collection есть ряд виртуальных методов (InsertItem, RemoveItem, SetItem, ClearItems), которые вы можете переопределить в классе-наследнике по своему усмотрению, и тем самым задать этим наследникам своё поведение при вставке, удалении или очистке элементов. При этом класс List в большей степени сосредотачивается на быстродействии при выполнении операций вставки/удаления/очистки, нежели на предоставлении пользователю средств расширяемости в классах-наследниках (виртуальных членов у него нет вовсе). MSDN нам авторитетно заявляет, что Provides the base class for a generic collection Иными словами, класс Collection в первую очередь предназначен для создания на его базе собственных обобщённых коллекций, тогда как List "для работы"

Комментариев нет:

Отправить комментарий