Einzelnen Beitrag anzeigen

Benutzerbild von Phoenix
Phoenix
(Moderator)
Online

Registriert seit: 25. Jun 2002
Ort: Hausach
7.613 Beiträge
 
#6

Re: Fragen zu OOP und Klassen: published, protected, ...

  Alt 23. Nov 2007, 10:51
Genau: Das ist hauptsächlich für Komponenten interessant bzw. für Klassen, die von Komponenten verwendet werden.
Public werden im OI nicht angezeigt, Published eben schon.

Zu private / protected:
Es wird logischerweise beides vererbt. Aber die abgeleitete Klasse kann nicht direkt auf die private Elemente zugreifen.

Beispiel:
Delphi-Quellcode:
TMyClass = class
private
  fCreated: TDateTime;
protected
  function getCreated:TDateTime;
public
  constructor Create();
end;

constructor TMyClass.Create();
begin
  fCreated := now;
end;

function TMyClass.getCreated:TDateTime;
begin
  result := fCreated;
end;
In jeder abgeleiteten KLasse kannst Du auf getCreated zugreifen und bekommst das Datum der Erstellung. Das Feld fCreated wird also mit vererbt. Du kannst aber NICHT auf fCreated einen anderen Wert zuweisen.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat