Страницы

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

воскресенье, 21 октября 2018 г.

C# различие List и Collection

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


Ответ

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

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

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