Зворотний зв'язок

Об’єктно-орієнтоване програмування

TFirstObject = class;

TSecondObject = class(TObject)

Fist : TFirstObject;



end;

TFirstObject = class(TObject)

...

end;

Щоб використовувати клас у програмі, потрібно, як мінімум, оголосити перемінну цього типу. Перемінна об'єктного типу називається екземпляром чи класу об'єктом.

var

AMyObject: TMyObject;

До введення терміна "клас" у мові Pascal існувала двозначність визначення "об'єкт", що міг позначати і тип, і перемінну цього типу. Тепер же існує чітка границя: клас — це опис, об'єкт — те, що створено відповідно до цього опису.

Як створюються і знищуються об'єкти?

Ті, хто раніш використовував ООП у роботі на C++ і особливо в Turbo Pascal, будьте уважні: у Object Pascal екземпляри об'єктів можуть бути тільки динамічними. Це означає, що в приведеному вище фрагменті перемінна AMyObject насправді є покажчиком, що містить адресу об'єкта.

Об'єкт "з'являється на світло" у результаті виклику спеціального методу, що инициализирует об'єкт — конструктора. Створений екземпляр знищується іншим методом — деструктором.

AMyObject := TMyObject.Create;

{ дії зі створеним об'єктом }



AMyObject...Destroy;

Але, скаже уважний читач, адже об'єкта ще ні, як ми можемо викликати його методи? Справедливе зауваження. Однак зверніть увагу, що викликається метод TMyObject.create, а не AMyObject.Create. Є такі методи (у тому числі конструктор), що успішно працюють до (чи навіть без) створення об'єкта. Про подібні методи, називаних методами класу, піде мова трохи нижче.

У Object Pascal конструкторів у класу може бути кілька. Загальноприйнято називати конструктор Create (на відміну від Turbo Pascal, де конструктор звичайно називався init, і від C++, де його ім'я збігається з ім'ям класу). Типова назва деструктора — Destroy.

type


Реферати!

У нас ви зможете знайти і ознайомитися з рефератами на будь-яку тему.







Не знайшли потрібний реферат ?

Замовте написання реферату на потрібну Вам тему

Замовити реферат