Jedes Objekt ist ein Zeiger.
Wenn du in eine Methode ein Objekt von TMeineSuperklasse hineingibst...
Delphi-Quellcode:
...
procedure TuWasTolles(Object: TObject)
begin
...
end;
...
var
meinObjekt: TMeineSuperklasse;
...
begin
...
TuWasTolles(meinObjekt);
...
end;
...sind alle Informationen deiner Klasse immer noch da, da du nur einen Zeiger übergeben hast.
Wenn du innerhlab von TuWasTolles etwas von deiner Klasse ausführen möchtest musst du es dann vorher casten.
Delphi-Quellcode:
procedure TuWasTolles(Object: TObject)
begin
...
TMeineSuperklasse(Object).DiesIstNeSuperMethode();
...
end;