Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Answer.docx
Скачиваний:
18
Добавлен:
15.04.2019
Размер:
861.2 Кб
Скачать

17. Отношение агрегирования.

Агрегирование – это отношение «часть - целое». Агрегирование – это особый случай ассоциации, обладающий дополнительной семантикой.

Пример: Кафедра ---(входит в состав)-- факультет.

Так агрегирование обладает свойствами транзитивности и асимметричности.

Транзитивность: если объект класса А является частью объекта класса В, а объект класса В - частью объекта класса С, то объект класса А является частью объекта класса С.

Асимметричность: если объект класса А является частью объекта класса В, то объект класса В не является частью объекта класса А.

Композитное агрегирование – не может существовать без целого (уничтожение одного – уничтожаются многие).

Пример: Кнопка ------ Окно

Композитное агрегирование обладает дополнительным свойством – зависимостью по существованию.

18. Отношение зависимости.

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

Изменение спецификации одного класса влияет на работу другого класса.

Спецификация зависимостей:

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

Наиболее распространенные варианты реализации отношения зависимости:

  • Первый класс передает одно или несколько сообщений второму классу.

  • Первый класс имеет метод с параметрами, …. Которого является членом второго класса.

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

Отношения обобщения это абстрактная зависимость, реализуется на уровне классов.

Отношение зависимости это абстрактная зависимость, реализуемая на уровне объектов(!!!).

Кратностей нет, т.к. всегда 1-1.

Пример кода (это легко написать).

19. Диаграммы классов.

Диаграмма классов, Class diagram — статическая структурная диаграмма, описывающая структуру системы, она демонстрирует классы системы, их атрибуты и зависимости между классами.

Представляет собой граф: вершины - классы, ребра - отношения. Диаграмма отражает статические отношения, существующие в классах. Основная диаграмма языка UML.

Классы и отношения между ними в основном определяют структуру нашей пр. сист.

Диаграмма классов-ассоциаций ( желательно проставлять кратность). Название ассоциаций именовать.

Диаграмма классов описывает типы объектов системы и различные статические отношения, которые существуют между ними. На диаграммах классов также изображаются атрибуты классов, операции классов и ограничения, которые накладываются на связи между объектами.

Шаблон класса:

<имя класса>*

+ M: 1...12

# L1: Integer

- ID: PP

# ADD N (...)

+ Int V (...)

(«+»- public

(«#»- protected

(«-»- private

Верхняя часть – имя класса, средняя – атрибуты, нижняя – методы.

Типовые мультипликаторы:

нотация

Объяснение

пример

0..1

Ноль или один экземпляр

кошка имеет или не имеет хозяина

1

Обязательно один экземпляр

у кошки одна мать

0..* or *

Ноль или более экземпляров

у кошки может быть, а может и не быть котят

1..*

Один или более экземпляров

у кошки есть хотя бы одно место, где она спит

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