Einzelnen Beitrag anzeigen

MarioM.

Registriert seit: 29. Mai 2006
52 Beiträge
 
#1

Objekt erzeugen - aber welche Klasse - und wie zugreifen?

  Alt 29. Mai 2006, 18:17
Guten Tag zusammen,

ich habe folgendes Problem, und hoffe, Ihr könnt mir dabei behilflich sein.

Ich habe zwei Klassen geschrieben, TSuzuki und TKawasaki.

Ich möchte nun in meinem Programm, je nachdem was der User auswählt, ein Objekt aus dieser Klasse erzeugen; und hier hört es auch schon auf mit dem Wissen um OOP, bzw. fangen die Probleme an.

Ich habe zwar schon einige Tutorials diesbezüglich gelesen, allerdings haben die sich alle mit einfachen Beispielen befasst, in dem eine Klasse geschrieben, und daraus dann ein Objekt erzeugt wurde.

Nun also zum Problem.

Normalerweise erzeuge ich ein Objekt dadurch, dass ich eine Variable erstelle, dieser einen Typ zuweise, und dann z.B. sage

Delphi-Quellcode:
var
  MeineVariable: TMeinTyp;
begin
  MeineVariable := TMeinTyp.Create;
end;
Nun ist es in meinem aktuellen Beispiel aber so, dass ich noch nicht weiss, was für ein Typ das sein wird, es kann also TSuzuki oder TKawasaki sein.

Muss ich dem Fall zwei Variablen anlegen, und je nachdem welcher Typ benötigt wird, eine von den beiden erzeugen, also so:

Delphi-Quellcode:
var
  MeineSuzuki: TSuzuki;
  MeineKawasaki: TKawasaki;
begin
  if Maschine = 'Suzukithen begin
    MeineSuzuki := TSuzuki.Create;
  end
  else if Maschine = 'Kawasakithen begin
    MeineKawasaki := TKawasaki.Create;
  end;
end;
Das wäre ja ziemlich umständlich, gerade wenn es dann mehrere Klassen sind.

Und meine zweite Frage:
Ich möchte natürlich mehrere dieser Objekte erzeugen. Wie kann ich dann später auf diese Objekte zugreifen? Ich meine, die heissen dann ja alle MeineSuzuki oder MeineKawasaki - geht das überhaupt, oder kann ich da irgendwie zur Laufzeit Variablen anlegen?


Verzeiht bitte, dass ich so ein für Euch sicherlich triviales Problem habe, aber ich beginne gerade erst mit der OOP und bin diesbezüglich nirgends fündig geworden - danke.
  Mit Zitat antworten Zitat