这是书本《UML面向对象建模与设计》(P68\ 4.10(7))上的一个习题,题目为
图描述泛化的部分元模型(上边的那个类模型图),泛化会与多个泛化角色相互关联,这里的角色指类在泛化中扮演的角色,角色类型要么是子类,要么是父类,这个模型是否支持多重继承,解释您的答案。
答案: 不支持多重继承,对于参加各种泛化的子类,一个类可以有子类的多种泛化角色。
我用个图(下边的类模型图)用于解释,以为关键在于图中superclassRole与Generalization类的关联是1对1还是多对1,如可以多对一则说明可以有多个父类,如果是1对1则只能由一个父类。我从上边的模型图得到Generalization 与GeneralizationRole的为1对多关联,因此我以为它是可以多重继承的,如图。但一看答案,发现不对,请问应该如何理解?