Home » Каковы Шесть Типов Отношений В Диаграммах Классов UML?
Шесть типов классовых отношений
Существует шесть основных типов отношений между классами: наследование, реализация/реализация, композиция, агрегация, ассоциация и зависимость. Стрелки для шести отношений следующие:
Тогда мы приходим к пониманию конкретного содержания классовых отношений.
Шесть типов отношений
В шести типах отношений структура кода трех типов отношений, таких как композиция, агрегация и ассоциация, аналогична использованию атрибутов для хранения ссылок другого класса. Поэтому их необходимо различать по соотношению между содержанием.
Наследование
Наследование также называется обобщением и используется для описания отношений между родительским и дочерним классами. Родительский класс также называется базовым классом, а подкласс также называется производным классом.
В отношениях наследования подкласс наследует все функции родительского класса, а родительский класс имеет все атрибуты, методы и подклассы. Подклассы содержат дополнительную информацию в дополнение к той же информации, что и родительский класс.
Например: автобусы, такси и автомобили — это автомобили, у них у всех есть имена, и все они могут находиться в дороге.
Реализация (Implementation) в основном используется для указания связи между интерфейсами и классами реализации .
Интерфейс (включая абстрактный класс ) — это набор методов. В отношениях реализации класс реализует интерфейс, а методы в классе реализуют все методы объявления интерфейса.
Например: автомобили и корабли — это транспортные средства, а транспортное средство — всего лишь абстрактное понятие мобильного средства, а корабль и транспортное средство реализуют конкретные мобильные функции.
Композиция: Отношения между целым и частью, но целое и часть не могут быть разделены .
Комбинированное отношение представляет собой отношение между целым и частью класса, а общее и часть имеют согласованное время жизни. Как только объект в целом перестанет существовать, некоторые объекты не будут существовать, и все они умрут в одной и той же жизни. Например, человек состоит из головы и тела. Они неразделимы и сосуществуют.
Агрегация: отношения между целым и частью, а также целым и частью могут быть разделены.
Агрегатные отношения также представляют отношения между целым и частью класса, объекты-члены являются частью общего объекта, но объект-член может существовать независимо от общего объекта.
Например, водители автобусов, рабочая одежда и головные уборы являются частью общих отношений, но их можно разделить. Рабочую одежду и головные уборы можно надевать на других водителей. Водители автобусов также могут носить другую рабочую одежду и головные уборы.
Отношения ассоциации
Ассоциация: указывает, что свойство класса содержит ссылку на экземпляр (или экземпляры) другого класса .
Ассоциация — это наиболее часто используемая связь между классом и классом, что означает наличие связи между одним типом объекта и другим типом объекта. Комбинации и агрегации также относятся к ассоциативным отношениям , но отношения между классами принадлежности слабее двух других.
Существует четыре вида ассоциаций : двусторонние ассоциации , односторонние ассоциации , самоассоциация и многозначные ассоциации .
Например: машины и водители, одна машина соответствует конкретному водителю, и один водитель может управлять несколькими машинами.
На диаграммах UML двунаправленные ассоциации могут иметь две стрелки или не иметь стрелок , а односторонние ассоциации или самоассоциации имеют стрелку .
В отношении множественности вы можете добавить число непосредственно к связанной строке, чтобы указать количество объектов в соответствующем классе.
-
-
-
-
0..1
: Нет или только один
-
m..n
: не менее m, не более n (m<=n)
Зависимость: предположим, что изменение в классе А вызывает изменение в классе В, тогда скажем, что класс В зависит от класса А.
В большинстве случаев зависимости отражаются в методах класса, использующих в качестве параметра объект другого класса .
Отношение зависимости — это отношение «использования». Изменение в конкретной вещи может повлиять на другие вещи, которые ее используют, и использовать зависимость, когда необходимо указать, что одна вещь использует другую. Например: Автомобиль работает на бензине. Если нет бензина, машина не сможет ехать.
Диаграмма классов — система заказов
Диаграмма классов ниже моделирует заказ клиента из розничного каталога. Центральным классом является Орден . С ним связаны Клиент , совершающий покупку, и Платеж . Оплата может быть одного из четырех видов: наличные , чек , кредит или банковский перевод . Заказ содержит OrderDetails (элементы строки), каждый со своим связанным Item .
Диаграмма классов с пользовательским ограничением
ИЗМЕНИТЬ ЭТОТ ШАБЛОН
Среди шести типов отношений кодовая структура комбинации, агрегации и ассоциации одинакова, и ее можно понять по силе отношения. Порядок от сильного к слабому: наследование → реализация → композиция → агрегация → ассоциация → зависимость . Ниже приведена полная диаграмма UML.
использованная литература