0

UML クラス図では、スタンドアロン クラスを使用するべきではなく、すべて何らかの方法で接続する必要があると言われています。理論的には理にかなっており、単純なクラスでは、確かに..次の例を見てください。

ここに画像の説明を入力

したがって、 a にPersonは 0 個以上のCar... まあまあ.. を含めることができますが、次の例を見てください。

ここに画像の説明を入力

Personとは、 a が aに属している、または aが を持っているPersonRepositoryという意味では実際には接続されていません。ただし、 が与えられたに対してを返すという点で、それらは関連付けられています。では、それらの間に関連線を追加することは正しいでしょうか?もしそうなら、どちらの方向を指す必要がありますか? この状況について相反する情報を取得しています。これについて説明をいただければ幸いです。PersonPersonRepositoryPersonRepositoryPersonPersonRepositoryPersonID

4

1 に答える 1

0

通常、あるクラスのインスタンスが別のクラスのインスタンスに属する場合、それは集約または構成の関係 (特別な種類の関連付け) です。

Personaから aを取得できる場合、PersonRepositoryそれは関連付けです。リポジトリには複数の がある場合があるPersonため1..nPerson最後にある必要があることに注意してください。

関連端の矢印は、この端がナビゲート可能であることを表します。反対側のクラスのインスタンスから、矢印を使用して端のクラスのインスタンスに移動できます。あなたの例では、 のインスタンスからPerson(PersonRepository例: ) に移動できますが、から のperson.getRepository()インスタンスを取得することはできません。矢印は反対側にある必要がありますPersonPersonRepository

        1..n     1
Person <----------- PersonRepository
于 2013-03-15T04:11:26.627 に答える