Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Области видимости

Основные положения объектно-ориентированного программирования | Принципы ООП | Переопределение методов | Перегрузка методов | Свойства | Объявление и создание объекта | Уничтожение объекта | События. Взаимодействие объектов. | От структурированного программирования к ООП | Основные задачи структурного программирования |


Читайте также:
  1. D) Кристаллобластическая
  2. ER-моделирование структуры предметной области
  3. III. Финансовые и бюджетные показатели Ивановской области
  4. IV. ЧЕМПИОНАТ ТОМСКОЙ ОБЛАСТИ
  5. Quot;Уничтожайте тайными средствами любого армянина восточных провинций, которого вы найдете в вашей области".
  6. SWOT - анализ развития туризма в Воронежской области
  7. V. Изменения в челюстно-лицевой области

Object Pascal предоставляет дополнительный контроль степени доступа к членам классов (полям и методам) с помощью директив protected, private, public, published и automated, открывающих соответствующие разделы объяв­лений, или, как принято говорить, – интерфейсы класса. За каждой из ди­ректив может следовать любое необходимое количество объявлений полей или методов.

Каждый интерфейс обеспечивает следующий уровень доступа.

§ Private (закрытый). Объявленные в данном разделе переменные и ме­тоды доступны только для того кода, который находится в блоке реа­лизации самого объекта. Директива private скрывает особенности реа­лизации объекта от пользователей и защищает члены этого объекта от непосредственного доступа и изменения извне.

§ Protected (защищенный). Члены класса, объявленные в разделе protected, доступны объектам, производным от данного класса. Это по­зволяет скрыть внутреннее устройство объекта от пользователя и в то же время обеспечить необходимую гибкость, а также эффективность доступа к полям и методам объекта для его потомков.

§ Public (открытый). Объявленные в этом разделе члены объекта доступ­ны в любом месте программы. Конструкторы и деструкторы всегда должны быть объявлены как public.

§ Published (экспортируемый). Для членов объекта, объявленных в дан­ном разделе, в процессе компиляции будет создана информация о ти­пах времени выполнения (RTTI – Runtime Type Information). Это по­зволит другим элементам приложения получать информацию об эле­ментах объекта, объявленных как published. В частности, подобная информация используется инспектором объектов при построении спи­сков свойств объектов.

§ Automated (автоматизированный). Этот раздел сохранен только для обес­печения совместимости с Delphi 2.

Методы

Методы (Methods) представляют собой процедуры и функции, принадлежа­щие классу. Можно сказать, что методы определяют поведение класса.

Итак, методом называется объявленная в классе функция или процедура, которая используется для работы с полями и свойствами класса. Согласно принципам ООП, обращаться к свойствам класса можно только через его методы.

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

В классе всегда должны присутствовать два важнейших метода: конструктор и деструктор.

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

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

На­пример, выполним следующее.

1. Создадим новый проект типа Application.

2. Откроем инспектор объектов (клавиша <F11>) и щелкнем на вкладке Events (События).

3. Два раза щелкнем на поле OnClick.

В редакторе кодов получим следующую программу (см. листинг ниже), где в классе TForm1 появится процедура FormClick, а в разделе реализации – описание этой процедуры.

unit Unit1;

 

interface

 

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs;

 

type

TForm1 = class(TForm)

procedure FormClick(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.FormClick(Sender: TObject);

begin

... { Здесь что-то выполняется }

end;

 

end.

Таким образом мы создали пустую процедуру обработки щелчка мыши. Можно ее заполнить соответствующими кодами и получить нужный эффект.

Например, можно изменить цвет фона окна на черный, для чего поместим в описание процедуры TForm1.FormClick (между begin...end) следующую строку:

Form1.Color:= clBlack;

и запустим программу (клавиша <F9>). После того как появится окно, щелк­нем на нем мышью и наблюдаем эффект.


Дата добавления: 2015-07-25; просмотров: 58 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Элементы классов| Типы методов

mybiblioteka.su - 2015-2024 год. (0.008 сек.)