Книга: Rational Rose 2000 и UML Визуальное моделирование

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

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

Наследованием (inheritance) называется такое отношение между классами, когда один класс использует часть структуры и/или поведения другого или нескольких классов. При наследовании создается иерархия абстракций, в которой подкласс (subclass) наследуется от одного или нескольких суперклассов (superclass). Наследование также называют иерархией типа «такой же, как» (is-a) или «такого вида, как» (kind-of). Подкласс наследует все атрибуты, операции и отношения, определенные в каждом его суперклассе. Значит, все атрибуты и операции, определенные на верхнем уровне иерархии, будут унаследованы классами на более низких ее уровнях. В подкласс могут быть добавлены дополнительные атрибуты и операции, применяемые только на данном уровне иерархии. Подкласс может содержать собственную реализацию унаследованной операции. Так как отношение наследования не является отношением между различными объектами, оно не имеет названия, не использует названия ролей и к нему не применяется понятие мощности.

На количество классов в иерархии наследования ограничений не существует. Однако на практике в программах, созданных с помощью С++, обычно используется от трех до пяти уровней, тогда как в приложениях, написанных на языке Smalltalk, — немного больше.

Наследование позволяет повторно использовать классы. Класс можно создать для одного приложения, после чего породить от него подкласс с расширенной функциональностью для использования в другом приложении.

Существует два способа определения наследования — обобщение и специализация. В любых разрабатываемых системах обычно используются оба метода.

Оглавление книги


Генерация: 0.110. Запросов К БД/Cache: 2 / 0
поделиться
Вверх Вниз