Machen wir ein simples Experiment
Delphi-Quellcode:
type
TMyBitmap = class(TBitmap)
end;
procedure TForm1.Button2Click(Sender: TObject);
var
MyBitmap: TMyBitmap;
begin
MyBitmap:= TMyBitmap.Create;
MyBitmap.LoadFromFile('c:\abc.bmp');
end;
Führe ich das Schritt für Schritt aus, dann lande ich nicht in meiner geerbten Methode von TMyBitmap, die physikalisch nicht da ist, sondern von TBitmap. Die Frage ist nur was da abläuft. Entweder dem Debuger fällt die Alternative, also greift er zum zeigen auf die Methode von TBitmap, oder was wohl wahrscheinlich ist, TMyBitmap erbt nicht die Methode, sondern nur ihre Adresse drau. Die Klasse hat nichts geerbt, sondern nur die Adresse des Vorgängers und gibt den Auftrag an den Vorgänger weiter. Oder kann man das so deuten: die Klasse hat schon alles geerbt, aber nur theoretisch. Aber wozu die Methode zwei mal im Speicher haben wen die vom Vorgänger identisch ist.
Natürlich sehe ich was ich sehe, mich interessiert eher die Philosophie dahinter.