In der Basis-Klasse würde ich die property komplett verstecken und Getter/Setter als abstract definieren:
Delphi-Quellcode:
type
TBaseClass=Class
protected
function GetValue: Integer; virtual; abstract;
Procedure SetValue(aValue:Integer); virtual; abstract;
Property Value : Integer read GetValue;
End;
TFirstClass=Class(TBaseClass)
private
FValue:Integer;
protected
function GetValue: Integer;override;
Constructor Create;
published
property Value; // so gibt es nur lesenden Zugriff
End;
TSecondClass=Class(TBaseClass)
private
FValue:Integer;
protected
function GetValue: Integer;override;
Procedure SetValue(aValue:Integer);override;
published
Property Value:Integer read GetValue write SetValue;
End;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)