<<
>>

Наследование

Наследование — это возможность использования уже определенных классов для построения иерархии классов, производных от них. Новый, или производный, класс может быть определен на основе уже имеющегося (базового) класса.
При этом новый класс сохраняет все свойства старого: данные объекта базового класса включаются в данные производного объекта, а методы базового класса могут быть вызваны для объекта производного класса, причем они будут выполняться над дан­ными включенного в него объекта базового класса. Иначе говоря, новый класс на­следует как данные старого класса, так и методы их обработки.

Например, на основе класса, описывающего объект «окружность», можно создать класс, описывающий объект «кольцо». Причем часть свойств и методов у этих объектов будет общей: координаты центра, радиус внешней окружности, метод рас­чета длины внешней окружности. Поэтому при объявлении класса «кольцо» не нужно заново описывать эти свойства и методы:

.TRing = class(TCircle) г2 : double: function area : double;

function circumference2 : double: function inside(x,y-.double) : boolean; end;

В объявлении класса TRing указываются функции расчета площади кольца и опре­деления попадания некоторой точки с заданными координатами внутрь кольца. Хотя имена этих методов совпадают с именами соответствующих методов для клас­са TCircle, их реализация должна быть иной, так как они применяются к разным геометрическим фигурам.

Если имена методов, объявляемых в дочернем классе, совпадают с именами полей или методов родительского класса, то говорят, что они перекрываются. В зависимости от типа методов результаты перекрытия методов будут различными. Тип метода определяется служебным словом после объявле­ния метода.

В Object Pascal при объявлении объектного типа имя наследуемого класса указы­вается в круглых скобках после слова dass. По умолчанию считается, что класс, определяемый пользователем, является наследником от класса TObject, поэтому следующие объявления идентичны:

TMyClass = class TMyClass = cl ass(TObject)

Для поддержки классов .NET (о новой платформе Microsoft .NET рассказывается в следующей главе) с запретом наследования было добавлено ключевое слово sealed. Класс, объявленный как sealed, не может иметь наследников. Например:

TMyClass = class [abstract | sealed] (TObject)

<< | >>
Источник: Избачков Ю. С., Петров В. Н.. Информационные системы. 2006

Еще по теме Наследование:

  1. § 40 Наследование в боковой линии. – В каких случаях женщина пользуется правом представления. – Наследование в родовом имении сообразно происхождению имения. – Наследование в благоприобретенном имении. – Предпочтение полнородных неполнородным (ст. 1133–1140).
  2. § 43 Особые порядки наследства. – Наследование и раздел у крестьян по обычаю. – Закон наследования в прибалтийских губерниях.
  3. § 38 Когда открывается наследство по русскому закону. – Ограничения наследственного права. – Имущество, составляющее предмет наследования. – Отношение наследования по закону к завещанию. – Кто может быть наследником?
  4. § 35 Поводы к открытию наследства. – Имущества, составляющие наследство. – Способные, неспособные и недостойные к наследованию. – Призвание к наследованию и приобретение наследства. – Договоры о наследстве и предварительный отказ от наследства. – Прямой и непрямой наследник. – Праздное и выморочное наследство.
  5. § 32 Общие понятия о наследстве и о наследственном преемстве. – Отношение завещания к законному наследованию. – Римское господство завещательного начала и отрицание его в германском праве. – Историческое развитие наследственного порядка в римском праве. – Допущение к наследованию кровных родственников.
  6. § 41 Наследование родителей. – Наследование супругов. – Выдел указной части. – Особливые преимущества вдового супруга при выделе. – Выдел из имения свекра и тестя. – Свойство права на иск о выделе и переход сего права к наследникам. – Отличия в Черниговской и Полтавской губерниях. – Особливые постановления по разным ведомствам (ст. 1141–1147).
  7. § 34 Смешанные системы в новейших законодательствах. – Происходящее от различия сих систем различие в порядке раздела и в допущении права представления. – Ограничение наследственного права пределами родства. – Ограничение женщин. – Разделение наследства между родами. – Возвращение подаренного родителями. – Наследование супругов и незаконных детей и родителей. – Закон наследования в Англии.
  8. Виды наследования.
  9. § 37 Исторический очерк русского наследственного права. – Первые начала наследования по договорам с греками, по Русской Правде и судебникам. – Влияние родового начала и политической борьбы с боярством на постановления о наследстве. – Отличия в наследовании между поместьями и вотчинами. – Образование вдовьей и дочерней части. – Право женщин-родственниц при мужчинах. – Недоумения о праве представления. – Соединение поместий с вотчинами и указ о единонаследии. – Отмена его. – Причины затруднений и
  10. II. НАСЛЕДОВАНИЕ