Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекция3.doc
Скачиваний:
17
Добавлен:
16.12.2018
Размер:
81.92 Кб
Скачать

3. Отношения между классами

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

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

Отношение зависимости графически изображается пунктирной линией между соответствующими элементами со стрелкой на одном из ее концов. Может помечаться необязательным индивидуальным именем. На диаграмме классов данное отношение связывает отдельные классы между собой, при этом стрелка направлена от класса-клиента зависимости к независимому классу или классу-источнику. На данном рисунке изображены два класса: Класс А и Класс Б, при этом Класс Б является источником некоторой зависимости, а Класс А - клиентом этой зависимости.

3.2 Отношение ассоциации

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

Если ассоциация обозначена линией со стрелкой, то такую ассоциацию называют однонаправленной. Без стрелки – двунаправленной. Поэтому в языке UML отсутствие стрелок у ассоциации трактуется следующим образом: направление отношения неизвестно или отношение является двунаправленным.

Признак множественности (или кратность) определяет количество объектов, вовлеченных в связь. Для связи ассоциации задаются два признака множественности, по одному на каждый класс (роль).

1 Ровно один

0..n Нуль или более

1..n Один или более

0..1 Нуль или один

5..8 Диапазон значений (5,6,7,8)

4..7, 9 Комбинация (4,5,6,7 или 9)

В качестве простого примера отношения ассоциации рассмотрим отношение между двумя классами - классом "Институт" и классом "Студент".

3.3 Отношение агрегации

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

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

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

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