Typ klasy jest kompatybilny z typami jej przodków. Stąd zmienna typu klasowego może odwoływać się do każdego obiektu typu potomnego. Przykładowo w deklaracji:
type TFigure = class(TObject); TRectangle = class(TFigure); TSquare = class(TRectangle); var Fig: TFigure;
zmienna Fig może być skojarzona z wartościami typów: TFigure, TRectangle i TSquare.