Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Унифицированный язык моделирования (Unified Mod...doc
Скачиваний:
8
Добавлен:
01.07.2025
Размер:
1.06 Mб
Скачать

Нотация

Не разделенные классы показываются без стереотипа. Класс типа показывается стереотипом "". Класс реализации показывается с помощью стереотипа "". ПО также может установить стереотип по умолчанию для всей диаграммы; в этом случае все символы классов без явного указания стереотипа отображаются в классы со стереотипом по умолчанию. Это может оказаться полезно для модели, которая близка к уровню программирования.

Реализация типа классом реализации моделируется как отношение реализации, показываемое пунктирной линией с непрерывным треугольником указателя стрелки (пунктирная "стрелка обобщения"). Этот символ подразумевает наследование операций, но не структуры (атрибутов или ассоциаций).

Пример

Рисунок 10. Нотация для классов типов и реализаций

Интерфейсы Семантика

Интерфейс описывает видимые снаружи операции класса, компоненты или другие сущности (включая резюмирующие модули, такие как пакеты) без задания их внутренней структуры. Каждый интерфейс часто описывает только ограниченную часть поведения реального класса. Интерфейсы не имеют реализаций; они не имеют атрибутов состояний или ассоциаций, а только операции. Интерфейс может иметь отношение обобщения. Интерфейс формально эквивалентен абстрактному классу без атрибутов и методов и имеющему только абстрактные операции, но интерфейс эквивалентен классу в метамодели UML; они оба являются Классификаторами.

Нотация

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

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

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

Пример

Рисунок 11. Нотация интерфейса на диаграмме класса