Структура описания классов

   
На этом шаге мы рассмотрим общую структуру описания классов.

   
Напомним, что в Object Pascal используется новая ООП-модель, в которой для описания классов используется зарезервированное слово class вместо слова object, применявшегося в старой модели.

   
Примечание. Для поддержания преемственности от Borland Pascal и обеспечения
переноса разработанных программ в Delphi в языке Object Pascal реализована и старая модель. Однако ее использование для создания новых
приложений не рекомендуется.

   
Общую структуру описания класса можно представить в таком виде:

type
  <ИмяКласса> = class (<ИмяРодительскогоКласса>) 
         <Опубликованные поля>; 
         <Опубликованные методы>; 
         <Опубликованные свойства>; 
   private
         <Приватные поля>; 
         <Приватные методы>; 
         <Приватные свойства>; 
   public
         <Общедоступные поля>; 
         <Общедоступные методы>; 
         <Общедоступные свойства>; 
   protected 
          <Защищенные поля>; 
          <Защищенные методы>; 
          <Защищенные свойства>; 
   published
          <Опубликованные поля>; 
          <Опубликованные методы>; 
          <Опубликованные свойства>; 
   automated
         <Поля реализации OLE-механизма>; 
         <Методы реализации OLE-механизма>; 
         <Свойства реализации OLE-механизма>; 
end;

   
По сравнению со старой ООП-моделью были сначала добавлены свойства и директивы protected и published (16-разрядная версия Delphi), а
затем - еще одна директива automated (начиная с Delphi 2.0).

   
Обратим внимание, что поля, методы и свойства, описанные сразу после заголовка класса, по умолчанию принимаются опубликованными (published) при включенной директиве компилятора {$М+} или
общедоступными (public) при выключенной директиве {$М-}.

   
Как и ранее количество разделов private, public, protected, published и automated, а также порядок их следования, могут быть произвольными. Семантика этих разделов рассматривается в последующих шагах.

   
На следующем шаге мы рассмотрим опережающее описание классов.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий