Как показать отношение частного наследования в диаграмме классов UML - PullRequest
10 голосов
/ 23 февраля 2012

В C ++, поскольку частное наследование не рассматривается как отношение is-a, как оно должно отображаться на диаграмме классов, и если оно показано как отношение has-a, то как его можно дифференцировать между композицией и частное наследство?

1 Ответ

2 голосов
/ 23 февраля 2012

Это должно быть отношение Композиции (сплошной черный ромб на стороне подкласса), потому что:

  • Под частным наследованием подразумевается «реализовано в терминах», но в этом отношении к нему можно относиться так же, как к «имеет» отношение.
  • Экземпляр подкласса явно владеет частью базового уровня объекта, а владение не разделяется ни с какими другими объектами.
...