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

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





VirtualProcedure. Щоб скористатися перевагами поліморфізму, її потрібно перекрити в нащадку. p align="justify"> Реалізація виглядає наступним чином:


{TAncestor}


procedure TAncestor. StaticProcedure;

begin ('Ancestor static procedure.');

end;


procedure TAncestor. VirtualProcedure;

begin ('Ancestor virtual procedure.');

end;

{TDescendant}


procedure TDescendant. StaticProcedure;

begin ('Descendant static procedure.');

end;


procedure TDescendant. VirtualProcedure;

begin ('Descendant override procedure.');

end;

Подивимося як це працює:

procedure TForm2. BitBtn1Click (Sender: TObject);

var : TAncestor;: TAncestor;

begin : = TAncestor . Create;: = TDescendant . Create;

try . StaticProcedure;. VirtualProcedure;. StaticProcedure;. VirtualProcedure;

finally . Free;. Free;

end;

end;


Зауважте, що в розділі var ми оголосили два об'єкти MyObject1 і MyObject2 типу TAncestor. А при створенні MyObject1 створили як TAncestor, а MyObject2 як TDescendant. Ось що ми побачимо при натисканні на кнопку BitBtn1:

1. Ancestor static procedure.

2. Ancestor virtual procedure.

. Ancestor static procedure.

. Descendant override procedure.

Для MyObject1 все зрозуміло, просто зголосилися зазначені процедури. А от для MyObject2 це не так. p align="j...


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





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

  • Реферат на тему: Procedure of preparation business-plan
  • Реферат на тему: Creation of control system by a personnel how to begin with a zero
  • Реферат на тему: Система TAX FREE в Росії
  • Реферат на тему: Програмний комплекс для управління і формування керуючих команд мобільним р ...
  • Реферат на тему: У фокусі Microsoft Virtual Server 2005