我在官方文档(https://www.omg.org/spec/UML/2.5.1/)中找不到答案。当我合并两个包含相同名称的类的包时会发生什么,这些包包含相同名称但类型不同的属性。我们还假设这些属性具有自己的setter方法。
UML图:
答案 0 :(得分:4)
UML(2.5)关于程序包合并(第12.2.3.3节“常规程序包合并规则”,第242页)
匹配类型化元素(例如,属性,参数)必须具有 符合类型。对于类或数据类型的类型, 一致性类型可以是相同类型,也可以是公共超类型。对所有人 在其他情况下,一致性意味着类型必须相同。
因此,由于uniqueID
Integer 的类型不同或 String 的子类型,因此您的程序包合并无效。
操作setUniqueID(Integer)
没问题,因为两个操作setUniqueID(Integer)
和setUniqueID(String)
可以作为重载操作共存。