ВУЗ:
Составители:
Рубрика:
2.7.2. Объявление класса 
Любой вновь создаваемый класс может содержать секции (разде-
лы),  определяемые  зарезервированными  словами  published (опублико-
ванные),  private (закрытые),  protected (защищенные),  public (доступ-
ные) и automated (автоматизированные). Внутри каждой секции внача-
ле определяются поля, а затем – методы и свойства. 
Секции определяют области видимости элементов описания клас-
са.  Секция public не  накладывает  ограничений  на  область  видимости 
перечисляемых в ней полей, методов и свойств – их можно вызывать в 
любом другом модуле программы. Секция published также не ограничи-
вает область видимости, однако в ней перечисляются свойства, которые 
должны  быть  доступны  не  только  на  этапе  исполнения,  но  и  на  этапе 
конструирования программы (т. е. в окне Инспектора объектов). Секция 
published  используется  только  при  разработке  нестандартных  компо-
нентов.  Заметим,  что  среда Delphi помещает  описания  компонентов, 
вставленных  в  форму,  в  специальную  секцию  без  названия,  которая 
располагается  сразу  за  заголовком  класса  и  продолжается  до  первой 
объявленной секции. Эта секция – published. Программисту  не следует 
помещать в нее собственные элементы описания класса или удалять из 
нее  элементы,  вставленные  средой.  Секция private сужает  область  ви-
димости  до  минимума:  закрытые  элементы  описания  доступны  только 
внутри  методов  данного  класса  и  подпрограммах,  находящихся  в  том 
же  модуле,  где  описан  класс.  Элемент,  объявленный  в  секции private, 
становится  недоступным  даже  ближайшим  потомкам  класса,  если  они 
размещаются в других модулях. Секция protected доступна только мето-
дам  самого  класса,  а  также  любым  его  потомкам,  независимо  от  того, 
находятся ли они в том же модуле или нет. Наконец, секция automated 
используется только для объявления свойств и методов, которые будут 
добавлены к так называемому интерфейсу OLE-объектов автоматизации; 
область видимости членов этой секции не ограничена. 
В Object Pascal разрешается сколько угодно раз объявлять любую 
секцию, причем порядок следования секций не  имеет значения. Любая 
секция может быть пустой. 
Следующий фрагмент кода поясняет области видимости. 
Unit Unit1; 
Interface 
Uses Controls, Forms; 
type 
TForm1 = class(TForm) 
72
Страницы
- « первая
- ‹ предыдущая
- …
- 70
- 71
- 72
- 73
- 74
- …
- следующая ›
- последняя »
