Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Основные механизмы и положения объектно-ориенти...doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
261.12 Кб
Скачать

Основные механизмы и положения объектно-ориентированного программирования

Объектно-ориентированное программирование является стандартом в технологии современного программирования и подавляющее большинство новейших средств разработки программных продуктов построены на основе ООП. Delphi не является исключением и обладает всеми необходимыми возможностями современного объектно-ориентированного языка программирования.

5.1. Инкапсуляция

5.1.1. Понятие класса и объекта

Классом называется описание некоторой структуры программы, обладающей набором внутренних переменных — свойств, и функций (процедур), имеющих доступ к свойствам — методов. Процесс объединения переменных и методов, в результате которого и получается класс, называется инкапсуляцией.

Итак, класс — это всего лишь описание, аналогичное описанию типа данных и недоступное для прямого использования в программе. Для получения доступа к свойствам и методам класса (за исключением методов класса, описанных ниже) необходимо создать экземпляр класса, называемый также объектом.

Отметим различие в терминологии Turbo Pascal и Delphi. В Pascal объектом называлась структура, получаемая в результате инкапсуляции. В Delphi такие структуры называются классами, а объекты — это экземпляры классов.

5.1.2. Структура класса

Описание класса. Свойства и методы

Описание классов разделено на две части — интерфейсную («заголовочную») и описательную. В интерфейсной части располагается заголовок класса, в котором указываются название класса, идентифицирующее его в программе, а также описания свойств и заголовков методов. В описательной части располагается программный код (реализация) методов, заголовки которых указаны в интерфейсной части описания класса.

Интерфейсная часть описания класса располагается в разделах описания типов данных модулей и основных частей программ. Выглядит она следующим образом:

Туре

…………………….

<Имя класса> = class {Заголовок описания}

<Имя свойства 1>: <Тип свойства 1>; {Описание свойства 1]

<Имя свойства N>: <Тип свойства N>; {Описание свойства N}

<Заголовок метода 1>; {Описание метода 1}

………………………

<Заголовок метода М>; {Описание метода М}

End;

Описательная часть класса находится в разделе описания локальных подпрограмм. Методы, заявленные в интерфейсной части реализуются по обычным правилам описания процедур и функций. Для связи подпрограмм с классом, методами которого они являются, название класса указывается перед именем самой подпрограммы:

Procedure <Имя класса> . <Имя метода> (<Список параметров>);

или для методов-функций:

Function <Имя класса> . <Имя метода> (<Список параметров>) : <Тип значения>;

Отличие методов от обычных процедур и функций состоит в том, что они могут обращаться к свойствам классов по имени без указания объектов. На этапе выполнения программы такие обращения будут перенаправлены к свойствам объектов, из которых вызываются соответствующие методы.

В листинге 5.1 приведен пример описания модуля, содержащего описание класса.

Листинг 5.1. Описания модуля, содержащего описание класса

Unit UsingClasses;