Методы Getitem и Setltem обращаются к внутреннему полю
Fitems:
FItems: TList;
Именно оно хранит коллекцию объектов во время выполнения. Отсюда следует, что коллекция представляет собой список указателей на экземпляры класса
TCollectionltem или его наследника. Класс
TCollection обеспечивает удобство использования элементов списка.
Таблица 7.3. Свойства
и методы класса TCollection
Объявление
Описание
property Count: Integer;
Возвращает число элементов коллекции
type TcollectionltemClass = class of Tcollectionltem;
property ItemClass: TcollectionltemClass;
Возвращает класс-наследник
TCollectionltem, экземпляры которого собраны в коллекции
Копирует коллекцию из объекта Source в данный объект
procedure BeginUpdate; virtual;
Отменяет перерисовку коллекции. Используется при внесении изменений в коллекцию
procedure Clear;
Удаляет из коллекции все элементы
procedure EndUpdate; virtual;
Отменяет действие метода BeginUpdate
function FindItemID(ID: Integer): TCollectionltem;
Возвращает объект коллекции с номером ID
function GetNamePath: string; override;
Возвращает имя класса коллекции во время выполнения, если коллекция не имеет владельца. Иначе возвращает название свойства класса, владеющего коллекцией
function Insert (Index: Integer): TCollectionltem;
Вставляет в коллекцию новый объект на место с номером
Index
Знаете ли Вы, что абстракция через спецификацию - это прием программирования, позволяющий абстрагироваться от процесса вычислений описанных в теле процедуры, до уровня знания того, что данная процедура делает. Это достигается путем задания спецификации, описывающей эффект ее работы, после чего смысл обращения к данной процедуре становится ясным через анализ этой спецификации, а не самого тела процедуры. Мы пользуемся абстракцией через спецификацию всякий раз, когда связываем с процедурой некий комментарий, достаточно информативный для того, чтобы иметь возможность работать без анализа тела процедуры. Абстракция через спецификацию позволяет абстрагироваться от процесса вычислений описанных в теле процедуры, до уровня знания того, что данная процедура делает. Это достигается путем задания спецификации, описывающей эффект ее работы, после чего смысл обращения к данной процедуре становится ясным через анализ этой спецификации, а не самого тела процедуры. Мы пользуемся абстракцией через спецификацию всякий раз, когда связываем с процедурой некий комментарий, достаточно информативный для того, чтобы иметь возможность работать без анализа тела процедуры.