AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi OOP: private Elemente von Untergeordneten Objekten setzen
Thema durchsuchen
Ansicht
Themen-Optionen

OOP: private Elemente von Untergeordneten Objekten setzen

Ein Thema von cmrudolph · begonnen am 19. Okt 2008 · letzter Beitrag vom 19. Okt 2008
Antwort Antwort
cmrudolph

Registriert seit: 14. Aug 2006
29 Beiträge
 
Delphi 7 Professional
 
#1

OOP: private Elemente von Untergeordneten Objekten setzen

  Alt 19. Okt 2008, 18:05
Guten Abend,

ich programmiere noch nicht lange objektorientiert, deshalb mag diese Frage ein wenig dümmlich vorkommen.

Ich habe nun einen Fall erzeugt, in welchem eine Klasse eine Liste von anderen Objekten enthält, dessen privaten Eigenschaften von der übergeordneten Klasse gesetzt werden müssen, nach außen hin aber readonly sein sollen.

Hier einmal ein Beispiel:
Delphi-Quellcode:
  TMy_File = class(TObject)
  private
    FFileID: Cardinal;
    FFileName: String;
    FFileSize: Cardinal;
    FFileStatus: Byte;
  public
    property FileID: Cardinal read FFileID;
    property FileName: String read FFileName;
    property FileSize: Cardinal read FFileSize;
    property FileStatus: Byte read FFileStatus;
    constructor Create();
  end;

  TMy_Bunch = class(TObject)
  private
    FFiles: Array of TMy_File;
    FCount: Integer;
    function getText(): String;
  public
    property Count: Integer read FCount;
    property Text: String read getText;
    constructor Create;
    destructor Destroy; override;
    procedure Delete(Index: Integer);
    procedure Add(const MyFile: TMy_File); overload;
    procedure SetValue(FileID: Cardinal;FieldName: String;Value: String);
    procedure Clear;
    procedure Append(const collection: TMy_Bunch);
  end;
TMy_Bunch ermittelt nun Dateiinformationen, die TMy_File nur sehr umständlich und mit viel Mehraufwand ermitteln könnte. Diese Eigenschaften der Dateien sind jedoch statisch und sollen deshalb readonly sein.
Mein Behelfsmäßiger Ansatz war, einen Konstruktor für das Objekt zu bauen, welcher alle Werte übernommen hat. Das finde ich aber äußerst hässlich.

Gibt es dazu eine elegantere Methode?

mfG
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#2

Re: OOP: private Elemente von Untergeordneten Objekten setze

  Alt 19. Okt 2008, 18:23
In Delphi kannst du auch auf private-Member anderer Klassen zugreifen, solange sie in einer Unit sind
  Mit Zitat antworten Zitat
cmrudolph

Registriert seit: 14. Aug 2006
29 Beiträge
 
Delphi 7 Professional
 
#3

Re: OOP: private Elemente von Untergeordneten Objekten setze

  Alt 19. Okt 2008, 18:31
Ich wusste doch, dass die Frage blöd war
Danke für die schnelle Aufklärung.
  Mit Zitat antworten Zitat
Antwort Antwort


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 05:40 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