Delphi-Quellcode:
Figure := TFigure.Create;
try
TRectangle(Figure).Draw('TFigure.Create / TRectangle(Figure).Draw');
// Ruft TRectangle.Draw auf
finally
FreeAndNil(Figure);
end;
Kuck es dir im Demo an. Setz einen Breakpunkt auf Figure := TFigure.Create und gehe mit F7 durch und kuck welche Methode er aufruft. Bei mir springt er in die Draw Methode von TRectangle.

Ist ja auch logisch, sonst wäre der Cast ja Blödsinn.