Registriert seit: 23. Jan 2008
3.685 Beiträge
Delphi 2007 Enterprise
|
Re: unterschied VERERBUNG & POLYMORPHIE
4. Nov 2009, 21:43
Zitat von NamenLozer:
Gut, der Preis für die schönste Formulierung geht an dich
Delphi-Quellcode:
TBaseClass = class
private
public
procedure Foo; virtual; abstract;
end;
TOneDerivate = TBaseClass
private
public
procedure Foo; override;
end;
implementation
var
AnObject: TBaseClass;
TOneDerivate.Foo;
begin
DoSomething;
end;
begin
AnObject := TBaseClass.Create;
AnObject.Foo; // ***
end;
An der Stelle *** wird TOneDerivate.Foo ausgeführt, obwohl TBaseClass.Foo aufgerufen wird. Das ist Polymorphie.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
|