あるオブジェクトをフィールドとして使用する場合(関連付け)とメソッドパラメータ(依存関係)を別のオブジェクトの内部として使用する場合

Susantha7:

UMLクラス図では、関連付けは依存関係よりも強い関係です。

関連と依存関係は次のように実装できます。

関連付け-> A has-a Bオブジェクト(メンバー変数として)

public class A {
    private B b;
    A(B b){
        this.b= b;
    }
    public void myMethod() {
        b.callMethod();
    }
}

依存関係-> AはBを参照します(メソッドパラメータまたは戻り値の型として)

public class A {

public void myMethod(B b) {
    b.callMethod();
}

}

上記の例でb.callMethod()は、関連付けまたは依存関係を使用して呼び出しを実行できます

いずれかの方法をいつ使用するか知りたい:

  • 1つのオブジェクトが他のオブジェクトをフィールドとして持っている(関連付け)
  • オブジェクトは別のオブジェクトをメソッドパラメータ(依存関係)として受け入れますか?

PS-どんな例でも大歓迎です:)

qwerty_so:

接続されたクラスのいずれかに所有プロパティを導入するつもりのあなただけの関連付けをモデル化します。そうでない場合は、パラメータで他のクラスのみを参照するか、依存関係を使用します。モデリングプロセスの過程では、通常、単純な関連付けまたは依存関係のアドホックから始めます。両者の束縛力を感じるからです。プレーンな(最終的には方向付けられた)関連付けは、プロパティの最初の指標です。後の設計段階では、ロールに名前を付けて多重度を追加します(これにより、方向名がロール名の使用法によって明確になるため、方向矢印が削除されます)。最後に、ドットを配置して、ロール名を所有プロパティとして実装する必要があることを示します。依存関係は、「ここも見る」のようなオプションです。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ