阅读here,似乎使用泛化建模自定义异常类是常见的。它没有提到的是我如何使用可能抛出自定义异常的类来建模关联。注意,我不是在询问如何在引发异常时对序列行为进行建模;我特别想要建立联想模型。或者这是对类图的误用?
答案 0 :(得分:5)
可能是这样的:
请注意,<<throws>>
不是标准的UML构造型。这没有什么不对 - 定义你自己的完美无缺。如果你想坚持标准,<<create>>
可能是最接近的。 (有关支持的构造型列表,请参阅here,如UML 2.1)。
你可以将MyClass-MyException建模为一个简单的二元关联而不是依赖,但它并不真正保持语义;他们之间没有系统的关系。与Factory创建实例的情况类似。如果您需要更多信息,那么有关于依赖关系here的文章很好。
这是对类图的误用吗?
如果您觉得有用,请不要。 UML是一个工具:在哪里使用它&amp;它如何帮助,忽略它没有。例证:谦虚地,MyClass
不会抛出任何异常,MyClass
的一个或多个方法会抛出异常。所以依赖是一种抽象。但只要:
然后它不是滥用,它是使用。
第h