Hallöle, ich habe eine Frage zur Polymorphie unter Delphi. Ich versuchte (sinngemaß folgendes):<BR>
Die Implementierung von Laufen habe ich aus Übersichtlichkeitsgründen erstmal weggelassen.<BR>
<PRE>
type
TTier=class
private
public
procedure laufen; virtual abstract;
end;
TKatze=class(TTier)
private
public
procedure laufen; override;
constructor Create;
end;
implementation
procedure irgendwas;
var
Tier:TTier;
begin
TTier:=TKatze.Create;
TTier.laufen; !!!! Hier bekomme ich einen abstrakten Fehler
TTier.Free;
end;
</PRE>
<BR>
Mit (TTier as TKatze).laufen funktionert es, das ist dann doch aber keine Polymorphie mehr oder? Oder habe ich hier ein grundsätzliches Verständnisproblem?<BR>
<BR>
Vielen Dank schonmal für Eure Hilfe.<BR>
Die Implementierung von Laufen habe ich aus Übersichtlichkeitsgründen erstmal weggelassen.<BR>
<PRE>
type
TTier=class
private
public
procedure laufen; virtual abstract;
end;
TKatze=class(TTier)
private
public
procedure laufen; override;
constructor Create;
end;
implementation
procedure irgendwas;
var
Tier:TTier;
begin
TTier:=TKatze.Create;
TTier.laufen; !!!! Hier bekomme ich einen abstrakten Fehler
TTier.Free;
end;
</PRE>
<BR>
Mit (TTier as TKatze).laufen funktionert es, das ist dann doch aber keine Polymorphie mehr oder? Oder habe ich hier ein grundsätzliches Verständnisproblem?<BR>
<BR>
Vielen Dank schonmal für Eure Hilfe.<BR>
Comment