Название: Алгоритмы и программы (Афанасьева Т. В.)

Жанр: Информационные системы и технологии

Просмотров: 1341


13.2. инкапсуляция

 

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

В Turbo Pascal средства объектно–ориентированного программи- рования связаны с тремя зарезервированными словами: OBJECT CONSTRUCTOR   и   DESTRUCTOR   и   двумя   стандартными   директи- вами: PRIVATE и VIRTUAL.

Зарезервированное слово OBJECT используется для описания объекта. Описание объекта должно помещаться в разделе описания типов, например:

 

Пример 13.2. type

Tpoint = object

X,Y: Integer; {Координаты точки} Color:word; {Цвет точки)

Visible: Boolean; {Признак светимости} Procedure Setlocation (NewX, NewY: integer);

{Задает новое положение, точки на экране}

Procedure SetCoforfNewColor: word); {Устанавливает цвет точки} Procedure SetVislble(VIS: Boolean);

{Выводит или гасит точку)

Procedure GetLocatIon(var Xloc, YLoc:integer);

{Возвращает координаты точки} Function GetColor: word;

{Возвращает цвет точки) Function GetVislble: Boolean;

{Возвращает признак светимости точки}

end; {Конец описания объекта ТРOINT)

 

В этом примере описывается объект TPOINT, представляющий собой данные и методы (процедуры и функции), необходимые для работы с графическими точками на экране ПК. Как видим, каждая точка характеризуется некоторым набором данных (своими координатами X и У, цветом COLOR и признаком светимости VISIBLE). Над этими данными определены все необходимые алгоритмические действия. С помощью этих переменных  можно  осуществлять  все  предусмотренные в  объекте действия, например, для переменных типа TPOINT можно высветить или погасить любую точку, переместить ее по экрану, изменить цвет.