AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Typumwandlung: Elemente der Unterklasse in Oberklasse
Thema durchsuchen
Ansicht
Themen-Optionen

Typumwandlung: Elemente der Unterklasse in Oberklasse

Ein Thema von enigma · begonnen am 10. Jul 2024 · letzter Beitrag vom 15. Jul 2024
Antwort Antwort
Seite 2 von 2     12   
freimatz

Registriert seit: 20. Mai 2010
1.443 Beiträge
 
Delphi 11 Alexandria
 
#11

AW: Typumwandlung: Elemente der Unterklasse in Oberklasse

  Alt 15. Jul 2024, 07:56
Vor 16 Jahren registriert und immer noch Anfänger?
Ich war mal in einer Firma, da war das Hauptprodukt in Delphi und auch schon recht alt. Als ich kam, gab es da keine Klassen, ausser die welche Delphi selbst erstellt. (Also nur Formuale, Reports, etc.).
Ich finds gut, dass Du enigma Dich damit beschäftigst.
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.464 Beiträge
 
Delphi 12 Athens
 
#12

AW: Typumwandlung: Elemente der Unterklasse in Oberklasse

  Alt 15. Jul 2024, 11:57
Versuch es mit einer virtuellen Testmethode.
Delphi-Quellcode:
TOberklasse = class(TObject)
protected
  function TestMethode: string; virtual;
public
  class procedure Test(AObj: TOberklasse);
  constructor Create;
end;

TUnterklasse = class(TOberklasse)
protected
  function TestMethode: string; override;
public
  Name: String;
  constructor Create;
end;

implementation

class procedure TOberklasse.Test(AObj: TOberklasse);
begin
  if Assigned(AObj) then
    ShowMessage(AObj.TestMethode);
end;

procedure TOberklasse.TestMethode;
begin
  Result := 'ClassName = ' + ClassName;
end;

procedure TUnterklasse.TestMethode;
const
  CRLF = #13#10;
begin
  Result :=
    inherited TestMethode + CRLF +
    'Name = ' + Name;
end;

Geändert von Blup (15. Jul 2024 um 12:02 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.582 Beiträge
 
Delphi 11 Alexandria
 
#13

AW: Typumwandlung: Elemente der Unterklasse in Oberklasse

  Alt 15. Jul 2024, 15:57
Kurzer Nachtrag: ich habe mehrere Unterklassen, die als Parameter für TOberklasse.Test(AObj: TOberklasse) verwendet werden können. Der Übersicht halber habe ich nur eine Unterklasse aufgeführt.
Warum wird denn die Instanz dort übergeben statt dort die Methode direkt aufzurufen? Blup hat dafür ja auch schon eine mögliche Lösung gepostet, aber mich würde die Motivation dahinter interessieren.

Ich vermute, dass du da einen Denkfehler hast, darum frage ich. Ich glaube, wenn wir verstehen, was du dort gedacht hast, können wir dir auch direkter helfen.

Und: Könntest du vielleicht konkreter etwas zum Hintergrund der Klassen sagen, nicht nur abstrakt als Beispiel? Es wäre einfacher, wenn klar wäre, worum es geht.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:22 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