Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция Алгоритмизация 1 курс.doc
Скачиваний:
37
Добавлен:
15.03.2015
Размер:
498.18 Кб
Скачать

3.4. Квалификатор

Квалификатор (qualifier) – это атрибут полюса ассоциации, значение которого позволяет ограничить (выделить) один или несколько объектов класса, присоединенного к другому полюсу.

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

Внутри этого прямоугольника (или рядом с ним) указываются имена и, возможно, типы атрибутов квалификатора.

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

Банк Шахматная доска

номерСчета горизонталь: Горизонталь

вертикаль: Вертикаль

*1

0 .. 1 1

Человек Квадрат

а б

Рис 32. Графическое изображение квалификатора:

а – для ассоциации;

б – для композиции

Основное назначение квалификатора– снизить кратность противоположного полюса ассоциации.

Шахматная доска

горизонталь: Горизонталь

вертикаль: Вертикаль

Квалификатор 1

1

Квадрат

Рис 33. Вариант графического изображения квалификатора:

3.5. Обобщение

Обобщение ( generalization) – это отношение между двумя сущностями, одна из которых является частным (специализированным) случаем другой.

Работает механизм наследования (характеристики и ограничения общего класса передаются подклассу).

Класс-потомок обладает всеми свойствами и поведением класса-предка, а также может иметь дополнительные свойства и поведение, которые отсутствуют у класса-предка.

Отношения обобщения являются направленными (стрелка указывает на общий класс или класс-предок.

Прямоугольник

Класс-предок +имя: Sting

+цвет Заливки : Color

+высота : Interger = 5

+ширина : Interger

/площадь : Interger {readOnly}

Класс-потомок

Квадрат

+id{redefines имя}

+высота = 7

/ширина

а б

Рис. … Графическое изображение отношения в UML

а – свернутое представления класса;

б– развернутое представление класса

  • Атрибут id класса «Квадрат» переопределяет атрибут имя класса «Прямоугольник».

  • Атрибут «высота» класса «Квадрат» имеет по умолчанию значение 7 (вместо значения 5 в родительском классе)

  • Атрибут «ширина» в классе «Квадрат» является производным (т. к. равен атрибуту «высота»)

  • Атрибут «цветЗаливки» и «площадь» передается из родительского класса в дочерний класс за счет наследования.

Доп. определение: Отношение обобщения называют также отношением классификации или наследования

Отношение обобщения допускает, чтобы от одного класса-предка одновременно наследовали несколько классов-потомков.

Геометрическая фигура

Прямоугольник Окружность Треугольник

Геометрическая фигура

Прямоугольник Окружность Треугольник

Рис. 36. Варианты нотации отношений обобщения в UML для нескольких классов-потомков

В UML допускается, чтобы класс-потомок наследовал от нескольких классов предков (множественное наследование)

Растения Продукты питания

Яблоки

Рис. 37 . Пример множественного наследования классов

Иерархия отношения обобщения всегда должна быть ациклической.

Транзитивно

Таксономический

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]