Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шевчук - конспект лекций №2.doc
Скачиваний:
6
Добавлен:
01.04.2025
Размер:
13 Мб
Скачать
☆
  1. Отношения в диаграммах классов

  • Ассоциации отображают структурные отношения между экземплярами классов, то есть соединения между объектами.

Каждая ассоциация может иметь метку – имя, которое описывает природу отношения.

Имени можно придать направление – достаточно добавить треугольник направления, который указывает направление, заданное для чтения имени.

В случае, если для объекта на одном конце ассоциации следует выбрать набор объектов на противоположном конце, тогда применяют квалификатор.

Варианты мощности:

5 — точно пять;

* — неограниченное количество;

0..* — ноль или более;

1..* — один или более;

3..7 — определенный диапазон;

1 ..3, 7 — определенный диапазон или число.

Ассоциация может обладать свойствами, которые отображаются в отдельном классе ассоциаций.

Свойства ассоциации:

Свойства класса-ассоциации характеризуют не один, а пару объектов, в данном случае – пару экземпляров, Профессор и Университет.

  • Обобщение – это отношение между общим предметом (суперклассом) и специализированной разновидностью этого предмета (подклассом).

Подкласс может иметь одного родителя (один суперкласс) или несколько родителей (несколько суперклассов). Во втором случае говорят о множественном наследовании.

  • Зависимость является отношением использования между клиентом (зависимым элементом) и поставщиком (независимым элементом).

О бычно операции клиента:

  • вызывают операции поставщика;

  • имеют сигнатуры, в которых возвращаемое значение или аргументы принадлежат классу поставщика.

  • Реализация – это семантическое отношение между классами, в котором класс-приемник выполняет реализацию операций интерфейса класса-источника.

Реализация интерфейса (LIFO – последний вошел, первый вышел; FIFO – первый вошел, первый вышел и т. д.)

В языке UML считаются разновидностями ассоциации, применяемыми для отображения структурных отношений между «целым» (агрегатом) и его «частями».

  • Агрегация показывает отношение по ссылке (в агрегат включены только указатели на части).

  • Композиция – это отношение физического включения (в агрегат включены сами части).

  1. Деревья наследования

При использования отношений обобщения строятся иерархия класса или деревья наследования.

В деревьях наследования выделяют следующие разновидности классов:

- абстрактный класс - класс который не может иметь экземпляров (пишется курсивом)

- конкретные классы - классы которые имею экземпляры

- корневой класс - это класс который не может иметь родителей ({root})

- конечный класс - класс который не может иметь детей ({Leaf})

Аналогичные свойства имеют и операции. Обычно операции являются полиморфной - т.е. в различных точках иерархии можно определить операции с похожей сигнатурой. Такие операции из дочерних классов переопределяют поведение соответствующих операций из родительских классов.

Деревья наследования:

Пример диаграммы классов:

Лекция 5. Динамические модели объектно-ориентированных программных систем

  1. Автоматы

  2. Диаграммы взаимодействия

  3. Диаграммы Use Case(СРС)

Динамические модели обеспечивают представление поведения системы в виде отображения изменения состояния в процессе работы системы в зависимости от времени.