UML 2.5: Что происходит с атрибутами того же имени, но другого типа при слиянии пакетов? - PullRequest
3 голосов
/ 24 мая 2019

Я не могу найти ответ в официальной документации (https://www.omg.org/spec/UML/2.5.1/). Что происходит, когда я объединяю два пакета, которые содержат классы с одинаковым именем, которые содержат атрибуты с одинаковым именем, но разных типов. Давайте также предположим, что этиатрибуты имеют свои собственные методы установки.

Диаграмма UML:

https://i.imgur.com/U3WreC3.jpg

1 Ответ

4 голосов
/ 24 мая 2019

UML (2.5) говорит о слиянии пакетов (§ 12.2.3.3 Общие правила слияния пакетов, стр. 242)

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

Так как тип uniqueID Integer не совпадает или является подтипом String , слияние вашего пакета недопустимо.

Операция setUniqueID(Integer) не представляет проблемы, поскольку две операции setUniqueID(Integer) и setUniqueID(String) могут сосуществовать как перегруженные операции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...