Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Климов. Лекции / Алг_яз_Лекция_4.pptx
Скачиваний:
22
Добавлен:
14.05.2015
Размер:
616.74 Кб
Скачать

Методы

1

Наиболее рациональным способом получения доступа

кполям данных является использование методов самого объекта

при этом метод является процедурой или функцией, описанной внутри объекта, которая позволяет связываться с ним

2

ИНИЦИАЛИЗАЦИЯ ПОЛЕЙ ОБЪЕКТОВ

Обычно при работе с

записями возникает проблема инициализации полей записей.

Предположим, имеется следующая структура:

TPerson = OBJECT Name : STRING[30]; Date : STRING[1O];

Rate : REAL; end;

3

Начинающие программисты часто используют оператор

 

WITH для присвоения полям Name, Date и Rate

 

начальных значений:

 

VARMyPerson : TPerson;

 

WITH MyPerson DO

 

BEGIN

 

Name:='Иванов, Николай';

 

Date:='25-06-1995';

 

Rate:=40000;

 

END;

 

Инициализация полей объектов

4

Такое действие будет корректным, но не идеальным.

При необходимости инициализировать более одной записи типа TPerson придется использовать большое число операторов WITH, которые будут выполнять одни и те же действия.

5

Естественным решением проблемы является создание инициализирующей процедуры, которая обобщает применение оператора WITH к любому экземпляру типа TPerson, передаваемого в качестве параметра:

PROCEDURE Init(VAR Person:TPerson; Nm,Dt:STRING; Rt:REAL);

BEGIN

WITH Person DO

BEGIN

Name:=Nm;

Date:=Dt;

Rate:=Rt;

END;

END;

Инициализация полей объектов

6

ИНИЦИАЛИЗАЦИЯ ПОЛЕЙ ОБЪЕКТОВ

Возникает вопрос, почему при разработке процедуры Init специально для обслуживания типа TPerson необходимо снова указывать, какой тип записи и какое его поле обрабатывает процедура Init?

Нет ли какого­нибудь способа объединения типа записи и обслуживающего кода в одно целое?

7

Такой способ имеется

иназывается методом.

8

Метод — это процедура или функция,

объявленные внутри объявления элемента типа объект

и имеющая доступ к полям данных объекта,

не требуя передачи их ему в виде параметров.

Методы

9

Методы

10

Соседние файлы в папке Климов. Лекции