統一モデリング言語 (UML) クラス図では、関連とは特定の分類子のオブジェクト (クラスやインターフェースなど) が接続されていて、別の分類子のオブジェクトにナビゲートできることを示す構造関係です。
関連は 2 つの分類子 (サプライヤー分類子とクライアント分類子) を接続します。関連は、データ構造に関する設計判断を支援します。データを格納するために必要なクラスだけでなく、他のクラスとデータを共用するために必要なクラスに関する判断も行うことができます。関連はクラス間、または同じクラスのオブジェクト間 (自己関連の場合) のデータ共用をサポートします。
例えば、Client クラスには Account クラスとの単一の関連 (1) があり、各 Account インスタンスが特定の Client インスタンスによって所有されることを示します。 Account を所有しているユーザーは、そのアカウントを所有する Client を検索できます。 Client が指定された場合は、そのクライアントの Account を検索できます。 Client クラスと Account クラスの関連は、これら 2 つの分類子間の構造を示しているため重要です。
関連に多重度の情報をリンクして、クラス B のインスタンスにリンクしているクラス A のインスタンス数を示すことができます。関連の両端には多重度の情報をリンクできます。
UML クラス図では、Java™ アプリケーションの関連は次の情報を表します。
UML の可視化マッピングでは、Java アプリケーション内のインスタンス変数は、UML クラス図での分類子の図形の属性になります。デフォルトでは、すべての Java および container-managed persistence (CMP) Entity Bean のフィールドは属性として示されます。
次の図では、関連コネクターは 2 つの分類子を結ぶ実線で表されています。
Java ソース・コード | UML の可視化 |
![]() |
![]() |