Kuck mal auf Luckie's Homepage, da gibts was zu Klassen.
Prinzipiell wirst du gleiche Sachen in einer Basisklasse definieren, und versionsabhängige Sachen in davon abgeleiteten Klassen. Etwa so, in sehr knapper Form:
Delphi-Quellcode:
type
TBasis = class
public
Planetname : string ;
// ...
constructor Create (Filename : string) ;
procedure Load ; virtual ;
end;
TPluto = class (TBasis)
public
procedure Load ; override ;
end;
TVenus = class (TBasis)
public
procedure Load ; override ;
end;
Nutzen geht dann so:
Delphi-Quellcode:
var
Pluto, Venus : TBasis ;
begin
Pluto := TPluto.Create ('file.txt') ;
Venus := TVenus.Create ('file.txt') ;
Pluto.Load ;
Venus.Load ;
end.
Dadurch wird dann jeweils die korrekte Load Prozedur aufgerufen.