Лекция
Тема: Объектная модель Delphi Pascal. Свойства. Простые свойства. Свойства – массивы. Индексированные свойства. Метаклассы. Ссылка на класс (метакласс). Операции is и as. Методы класса.
Цель: познакомить со свойствами, метаклассами, познакомить со свойствами-массивами
Массив— это структура данных, представляющая собой набор переменных одинакового типа, имеющих общее имя. Массивы удобно использовать для хранения однородной по своей природе информации, например, таблиц и списков.
Объявление массива
Массив, как и любая переменная программы, перед использованием должен быть объявлен в разделе объявления переменных. В общем виде инструкция объявления массива выгладит следующим образом: Имя: [нижний_индекс..верхний_индекс] of
тип
где:
· имя — имя массива;
· array — зарезервированное слово языка Delphi, обозначающее, что объявляемое имя является именем массива;
· нижний_индекс и верхний_индекс — целые константы, определяющие диапазон изменения индекса элементов массива и, неявно, количество элементов (размер) массива;
· тип — тип элементов массива.
· Memol.Lines[0] := 'Строка';
Свойства-массивы имеют перечисленные ниже особенности.
§ Свойства-массивы объявляются с указанием одного или нескольких индексных параметров. Тип индексов должен быть целым или строковым (в отличие от обычных массивов, свойства-массивы могут индексироваться строками).
§ Доступ к значению свойства-массива может быть только косвенным (через методы SetXXXX/GetXXXX).
§ Если в определении свойства-массива используется несколько индексов (многомерные свойства-массивы), методы доступа должны содержать параметры для каждого индекса в том же порядке, что и в объявлении свойства.
§ Свойства-массивы нельзя объявлять в секции published. Доступ к значениям свойства-массива на этапе конструирования возможен только с помощью специализированного редактора свойств.
Метаклассы. Ссылки на классы
Язык Object Pascal позволяет рассматривать классы как своего рода объекты, которыми можно манипулировать в программе. Такая возможность рождает новое понятие — класс класса; его принято обозначать термином метакласс.
Для поддержки метаклассов введен специальный тип данных — ссылка на класс (class reference). Он описывается с помощью словосочетания class of, например:
Code: |
|
Переменная типа TResourceGaugeClass объявляется в программе обычным образом:
Code: |
|
Значениями переменной ClassRef могут быть класс TResourceGauge и все порожденные от него классы. Допустимы, например, следующие операторы:
Code: |
|
По аналогии с тем, как для всех классов существует общий предок TObject, у ссылок на классы существует базовый тип TCIass:
Code: |
|
Переменная типа TCIass может ссылаться на любой класс.Практическая ценность ссылок на классы состоит в возможности создавать программные модули, работающие с любыми классами объектов, даже с теми, которые еще не разработаны.
Контрольные вопросы
1. Что такое массив?
2. Как объявить массив?
3. Какие особенности имеют свойства-массивы?
Жоғарғы оқу орнындағы лекция және оқу жұмысын ұйымдастырудың басқа формалары мен әдістері
Жоғарғы оқу орнындағы лекция. Ағымдағы лекция
Сабақ кестесі
Жоо-дағы оқу процесін ұйымдастыру формалары
Тіл білімінің өзекті мәселелері пәнінің оқу -әдістемелік кешені
Информатика пәні бойынша сыртқы бөлімге арналған тапсырмалар жинағы
Тіл философиясы – тілдің философиялық қызметі жөніндегі ғылым
Семинар сабақтарда пәннің мазмұны бойынша проблемалық оқыту принципін іске асыру
Жоғары оқу орындағы тәрбие мен оқытудың теориясы
Бастауыш сыныпта дүниетануды оқыту әдістемесі