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.