Thema: OOP - Frage

Einzelnen Beitrag anzeigen

conti

Registriert seit: 10. Nov 2006
19 Beiträge
 
#1

OOP - Frage

  Alt 19. Aug 2007, 15:33
Habe folgendes Problem:
Delphi-Quellcode:
unit ServiceStarter;

constructor TServiceStarter.Create(service: TServiceInterface)
begin
 while ... do
 // für jeden Thread eine Instanz
   begin
    service := TServiceInterface.Create;
   end;
end;
In einer anderen Unit passiert dann das Folgende:
Delphi-Quellcode:
 srvStarter: TServiceStarter;

 service1: TService1; // TService1 ist von TServiceInterface abgeleitet!!

 //...
 srvStarter := TServiceStarter.Create(service1);

Jeder Service ist von TServiceInterface abgeleitet (natürlich macht jeder Service immer etwas extra dazu ...)
Der ServiceStarter muss mitjedwelchen klar kommen! Aber dazu muss ich die Generalität behalten, also in
der Unit ServiceStarter mit der BasisKlasse (TServiceInterface) arbeiten. Die Folge ist, dass ich nur den Konstruktor der Basisklasse aufrufen kann ...
dabei bräuchte ich für jeden Service den eigenen Konstruktor aufzurufen.


Ich hoffe, dass ich das ganze richtig beschrieben habe ...
vielleicht könnte jemand mit ein paar Ratschlägen helfen!

Danke
  Mit Zitat antworten Zitat