Einzelnen Beitrag anzeigen

Benutzerbild von masc-online
masc-online

Registriert seit: 10. Dez 2005
Ort: Leinfelden-Echterdingen
21 Beiträge
 
Delphi 11 Alexandria
 
#1

Sinn einfacher Getter und Setter

  Alt 18. Apr 2019, 09:17
Delphi-Version: 10.2 Tokyo
Hallo zusammen,

ich bin gerade wieder über einen einfachen Getter/Setter gestolpert und frage mich (mal wieder), ob es dafür tatsächlich einen sinnvollen Einsatzzweck gibt oder ob es die letztendlich nur gibt, weil man sich darauf geeinigt hat, immer Getter und Setter zu verwenden...
  • Sprich hat im nachfolgenden Beispiel das Lesen/Schreibe der Property Test1 irgendwelche Vor- oder Nachteile gegenüber Test2?
  • Warum wird im Setter zu Test1 erst noch die Prüfung auf Ungleichheit vorgenommen, statt einfach direkt den Wert zuzuweisen?
Bei den Fragen geht's mir bewusst um genau diese Form, bei der keine weiteren Aktionen, Checks oder Umwandlungen definiert sind.
Code:
TTestClass = class(TObject)
private
  FTest1: String;
  FTest2: String;
  function GetTest1: String;
  procedure SetTest1(const AValue: String);
public
  property Test1: String read GetTest1 write SetTest1;
  property Test2: String read FTest2 write FTest2;
end;


function TTestClass.GetTest1: String;
begin
  Result := FTest1;
end;

procedure TTestClass.SetTest1(const AValue: String);
begin
  if (FTest1 <> AValue) then
    FTest1 := AValue;
end;
Gruß, Marian
Marian
«Sei nie zufrieden, aber immer glücklich, mit dem was du tust!»
  Mit Zitat antworten Zitat