Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
15. Mär 2010
Aber dann ist und bleibt es aber bei einer NEUDeklaration und nicht NUR um die Sichtbarkeit.
Es geht um eine bessere Codeverständlichkeit.
Bei property name; weiß man sofort, daß es sich nur um eine Sichtbarkeitsänderung handelt.
Wenn man das jetzt so macht, dann erkennt man aus der Deklaration nicht, daß hier nur die Sichtbarkeit geändert wird ... immerhin könnte in dem Code, da ganz...
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
15. Mär 2010
@HERMES: so würde man die Methode überschreiben, aber das will ich ja nicht.
Im Ergebnis (TVisibleClass) soll die Methode (aus THiddenClass) einfach nur sichtbar werden, so als wäre sie in Public deklariert wurden, obwohl sie in THiddenClass ja versteckt (protected) ist.
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
15. Mär 2010
@DeddyH: Genau.
type
THiddenClass = class
protected
procedure Irgendwas;
end;
TVisibleClass = class(THiddenClass)
public
Forum: Object-Pascal / Delphi-Language
Delphi
by himitsu,
15. Mär 2010
Joar, also bei den Property kann man doch recht einfach die Sichtbarkeit nachträglich herhöhen.
type
THiddenClass = class
protected
property Irgendwas: Integer read GetWas write SetWas;
end;
TVisibleClass = class(THiddenClass)
public
property Irgendwas;