![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
1.Есть объект 1
2.Есть метод(процедура) этого объекта 1 3. Есть объект 2 Вопрос: У объекта 2 должен быть метод полнотью наследующий метод объекта 1, но со воими небольшими дополнениями. ( у методов должно быть одинаковое название. Как это сделать, что надо указать при наследовании данной процедуры, что новая полностью не затерла старую? Заранее спасибо, с уважением, Алексей! |
|
#2
|
||||
|
||||
|
Можно так:
Код:
program Project32;
{$APPTYPE CONSOLE}
uses
SysUtils;
Type
TFirstObject = object
X,Y: Integer;
procedure SetXY(NewX,NewY: Integer); virtual;
end;
TSecondObject = object(TFirstObject)
procedure SetXY(NewX,NewY: Integer); virtual;
end;
procedure TFirstObject.SetXY(NewX,NewY: Integer);
begin
X := NewX; Y := NewY;
end;
procedure TSecondObject.SetXY(NewX,NewY: Integer);
begin
TFirstObject.SetXY(NewX,NewY);
X := X*10; Y := Y*10;
end;
Var
FirstObject: TFirstObject;
SecondObject: TSecondObject;
begin
FirstObject.SetXY(1,1);
SecondObject.SetXY(1,1);
WriteLn('FirstObject: ',FirstObject.X:4,FirstObject.Y:4);
WriteLn('SecondObject: ',SecondObject.X:4,SecondObject.Y:4);
ReadLn;
end.TSecondObject = object(TFirstObject) procedure SetXY(X: Integer); virtual; end; |
|
#3
|
|||
|
|||
|
Спасибо, помогло.
|