Директивы protected и private
Помимо объявления элементов класса (полей, методов, свойств) описание класса, как правило, содержит директивы protected (защищенный) и private (закрытый), которые устанавливают степень видимости элементов класса в программе.
Элементы класса, объявленные в секции protected, доступны только в порожденных от него классах. Область видимости элементов класса этой секции не ограничивается модулем, в котором находится описание класса. Обычно в секцию protected помещают описание методов класса.
Элементы класса, объявленные в секции private, видимы только внутри модуля. Эти элементы не доступны за пределами модуля, даже в производных классах. Обычно в секцию private помещают описание полей класса, а методы, обеспечивающие доступ к этим полям, помещают в секцию protected.
Ниже приведено описание класса TPerson, в которое включены директивы управления доступом.
TPerson = class private
FName: TName; // значение свойства Name FAddress: TAddress; // значение свойства Address protected
Constructor Create(Name:TName); Function GetName: TName; Function GetAddress: TAddress; Procedure SetAddress(NewAddress:TAddress); Property Name: TName
read GetName; Property Address: TAddress
read GetAddress write SetAddress; end;
Примечание
Иногда нужно полностью скрыть элементы класса. В этом случае определение класса следует поместить в отдельный модуль, а в программу, которая использует объекты этого класса, поместить ссылку на модуль.
Источник: http://qo.do.am/index/teorija_po_programirovaniju/0-47 СОДЕРЖАНИЕ Delphi 7 |