Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi 2 Klassen und von jeder Klassen auf die Methoden der anderen (https://www.delphipraxis.net/59004-2-klassen-und-von-jeder-klassen-auf-die-methoden-der-anderen.html)

Christian18 15. Dez 2005 18:42


2 Klassen und von jeder Klassen auf die Methoden der anderen
 
Hallo,

wenn ich zwei Klassen habe. In beiden Klassen habe ich ein paar Methoden. Wie kann ich es machen, dass ich von jeder Klasse die Methoden der anderen Klasse nutzen kann. Ich habe es mal mit der Vererbung versucht. Das funktioniert auch alles sehr gut, aber ich kann dann nur die Methoden einer Klasse nutzen.

Bsp.: bei der Vererbung

TFahrzeug und TAuto

TAuto erbt die Eigenschaften und Methoden von TFahrzeug. Jetzt kann ich aber von TFahrzeug nicht auf die Eigenschaften und Methoden von TAuto zugreifen.

PS: Hat jemand eine Idee wie ich das Realisieren kann???

Mit freundlichen Grüßen

Christian18

Waldteufel 15. Dez 2005 18:47

Re: 2 Klassen und von jeder Klassen auf die Methoden der and
 
Hi.

Warum musst du denn von TFahrzeug aus auf Methoden von TAuto zugreifen? ZuendkerzeWechseln() wird es ja wohl nur in TAuto geben. Und Losfahren() muss dann eben als virtual deklariert werden.

Zum Beispiel so:
Delphi-Quellcode:
type
  TFahrzeug = class
    procedure Losfahren(); virtual;
  end;

  TAuto = class(TFahrzeug)
    procedure Losfahren(); virtual;
  end;

procedure TFahrzeug.Losfaren();
begin
  // los geht's
end;

procedure TAuto.Losfahren();
begin
  if TankVoll then
    inherited Losfahren
  else MotorStotternLassen;
end;

tommie-lie 15. Dez 2005 18:49

Re: 2 Klassen und von jeder Klassen auf die Methoden der and
 
Wie sieht es denn konkret und vollständig aus? Je nach konkretem Modell kann die Antwort "public", "interfaces" oder "gar nicht" lauten.

Khabarakh 15. Dez 2005 18:50

Re: 2 Klassen und von jeder Klassen auf die Methoden der and
 
Zitat:

Zitat von Christian18
Jetzt kann ich aber von TFahrzeug nicht auf die Eigenschaften und Methoden von TAuto zugreifen.

Das ist ja auch richtig so, sowohl in der Logik der OOP als auch in Hinsicht auf dein Beispiel. TFahrzeug kann ja nichts wissen, dass der Mensch irgend wann einmal ein Auto erfindet.
Du musst dir also ein neues Beispiel ausdenken, zumal ich nicht wirklich verstanden habe, was genau du machen willst :wink: .

[edit]Nix rotes Rechteck da :stupid: . [/edit]


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz