Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Наследование и агрегация

Читайте также:
  1. Глава 62. Наследование по завещанию
  2. Глава 63. Наследование по закону
  3. Глава 65. Наследование отдельных видов имущества
  4. Наследование вещей, ограниченно оборотоспособных
  5. Наследование групп крови
  6. Наследование группы крови системы АВ0
  7. Наследование долей в уставном капитале общества с ограниченной ответственностью и общества с дополнительной ответственностью

Наследование часто используется не по назначению. В действительности неправильное применение наследования может привести к проблемам. Например, студент может учиться очно или заочно. Создадим суперкласс студент (Student) и два подкласса - студент очного отделения (FulltimeStudent) и студент заочного отделения (ParttimeStudent) Во время работы такой структуры наверняка возникнут определенные проблемы. Что случится, если

• студент очного отделения решит перейти на заочное? Это значит, что объекту придется сменить класс,

• будет добавлена еще одна размерность (например, студент, получающий стипендию и не получающий стипендию)? Здесь понадобятся новые подклассы для представления информации о стипендии, а также множественное наследование для поддержки всех комбинаций (студент очного отделения, получающий стипендию, студент заочного отделения, получающий стипендию и т.д.)

Наследование должно служить для отделения общности от специфики Агрегация - для отражения комбинированных отношений. Часто оба типа отношений используются вместе. Класс студент имеет классификацию (агрегацию), которая, в свою очередь, делится на классы студент-очник и студент-заочник (наследование) - см рис 6.4.


Рис.6.4

РЕЗЮМЕ

Наследование позволяет создавать иерархию классов, когда общая структура и поведение разделяются между ними. Термин "суперкласс" характеризует класс, содержащий общую информацию. Классы-потомки называются подклассами. Подкласс наследует все атрибуты, операции и отношения, определенные во всех его суперклассах.

Есть два способа определения наследования в любой системе: обобщение и специализация. Обобщение обеспечивает возможность создания суперклассов, объединяющих общие для нескольких классов структуру и поведение. Специализация позволяет создавать подклассы, которые уточняют или дополняют структуру и поведение, определенные в суперклассе.



Дата добавления: 2015-08-09; просмотров: 82 | Нарушение авторских прав


Читайте в этой же книге: Свойства сообщений | ДИАГРАММЫ СОТРУДНИЧЕСТВА | ДЛЯ СИСТЕМЫ РЕГИСТРАЦИИ КУРСОВ | АГРЕГАЦИОННЫЕ ОТНОШЕНИЯ | Именование ролей | Мощность отношений | Отношения между пакетами в системе регистрации учебных курсов | СОЗДАНИЕ ОПЕРАЦИЙ | Отображение атрибутов и операций | Ассоциативные классы |
<== предыдущая страница | следующая страница ==>
Иерархии наследования.| СОСТОЯНИЯ

mybiblioteka.su - 2015-2024 год. (0.006 сек.)