Области видимости классов в Delphi. Объясните элементарное по-русски.
TMyClass = class(TObject)
private
protected
public
published
end;
Что из этого и докуда видно???
public (открытые) – не накладывает ограничений на область видимости перечисляемых в ней полей, методов и свойств – их можно вызвать в любом другом модуле программы.
published (опубликованные) , - также не ограничивает область видимости, однако в ней перечисляются свойства, которые должны быть доступны не только на этапе исполнения, но и на этапе конструирования программы ( то есть в окне инспектора объектов)
private (закрытые) – элементы описания доступны только внутри методов даного класса и поддпрограммах, находящихся в том же модуле, в котором описан класс.
protected (защищенные) , - доступны только методам класса, а также любым его потомкам независимо от того находятся ли они в том же модуле или нет.
published - это визуальные компоненты
public - доступные из других классов
private - сугубо для внутреннего использования внутри класса
protected - я так и не понял, что-то про наследующие классы и друзей сказано, но не уверен, промолчу...