Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Контрольные работы » Конструювання програм

Реферат Конструювання програм





ustify"> Виклик MyObject2. StaticProcedure; призвів до появи В«Ancestor static procedure.В». Адже ми оголосили MyObject2: TAncestor, тому і була викликана процедураStaticProcedure; класу TAncestor. p align="justify"> А от виклик MyObject2. VirtualProcedure; привів до виклику VirtualProcedure; реалізованої в нащадку (TDescendant). Це сталося тому, що MyObject2 був створений не какTAncestor, а як TDescendant: MyObject2: = TDescendant. Create; І віртуальний метод VirtualProcdure був перекритий.

У Delphi поліморфізм реалізований за допомогою так званої віртуальної таблиці методів (або VMT).

Досить часто віртуальні методи забувають перекрити за допомогою ключового слова override . Це призводить до закриття методу. У цьому разі заміщення методів у VMT не відбудеться і необхідна функціональність що не отримана.

Ця помилка відстежується компілятором, який видає відповідне попередження.

Виклик методу предка з перекритої методу

Буває необхідно викликати метод предка в перекритому методі.

Оголосимо два класи. Предка (Ancestor):


TAncestor = class

private

protected

public

{Віртуальна процедура.}

procedure VirtualProcedure ; virtual;

end;

і його нащадка (Descendant):

TDescendant = class (TAncestor)

private

protected

public

{Перекриття віртуальної процедури.}

procedure VirtualProcedure; override;

end;


Звернення до методу предка реалізується за допомогою ключового слова В«inheritedВ»


procedure TDescendant. VirtualProcedure;

begin

inherited;

end;

Варто пам'ятати, що в Delphi деструктор повинен бути обов'язково перекритим - В«overrideВ» - і містити виклик деструктора предка

TDescendant = class (TAncestor)

private

protected

public


Назад | сторінка 4 з 9 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Procedure of preparation business-plan
  • Реферат на тему: Освоєння методу вимірювання тиску за допомогою п'єзорезистивного датчик ...
  • Реферат на тему: Прийняття управлінського рішення за допомогою симплексного методу
  • Реферат на тему: Освоєння методу вимірювання тиску за допомогою тензорезистивного датчика
  • Реферат на тему: Обчислення інтеграла за допомогою методу трапецій на комп'ютері