3.8 クラス間の関係

プログラム

C3_8

プログラムの説明

クラス間の関係

ソースコードとクラス図を見てください。

  • 関連関係:実線の矢印で、オブジェクト間の長期的な関係です。
  • 依存関係:破線の矢印で、オブジェクト間の短期的な関係です。

どちらの関係もコンパイルするときには全ての関連のあるクラスが必要になります。

簡単に説明すると

  • 関連関係:オブジェクトを状態として持っている
  • 依存関係:メソッドの記述中に変数宣言などでクラス名が記述されている

となります。

クラス図よりUserLocatorはUserインタフェースと集約の関連関係があり、Studentクラスと依存関係があることが分かります。

集約関係

オブジェクトがより大きな全体の一部の関係を表します。つまり、Userインタフェースを実装したオブジェクトがUserLocatorによってグループ化されていると考えてください。