コードを意味するUML

クラス(クラス)

クラス(図Aは)3つのコンポーネントが含まれているオブジェクトのための青写真です。最初は、定義されたJavaクラス名です。第二の特性は、(属性)です。第三の方法は、クラスによって提供されます。

可視性修飾子は属性と操作の前に添付することができます。プラス記号(+)は、共通の可視性を示します。マイナス記号( - )は、民間の可視性を表します。#記号は、保護された可視性を示します。省略視認性改良剤パッケージ(パッケージ)レベルを表します。プロパティまたはに下線を操作すると、それが静的であることを示しています。動作において、また、それが受け入れるパラメータ、ならびに戻り型を一覧表示することができる、「Javaの」領域Aは、図に示します。

図A

 

 

 

包(Package)

パッケージ(図Bは)汎用機構の組み合わせです。UMLパッケージには、Javaパッケージに直接対応しています。Javaでは、パッケージには、両方のクラス、またはその両方を含む、他のパッケージが含まれていてもよいです。モデリングするとき、あなたは通常、論理的なパッケージを持って、主にあなたの組織をモデル化するために使用されます。また、システムのJavaパッケージに直接変換された物理的なパッケージを、持っています。アイデンティティのこのパッケージの一意の各パッケージの名前。

図B


インタフェース(インタフェース)

インターフェース(図C)が提供するサービス・クラスを指定する操作のコレクションです。これは、Javaのインターフェイスタイプに直接対応しています。図Cのアイコンで表現することができるインタフェースは、また、標準を表すために<< >>インタフェースクラスを追加してもよいです。クラス図に、あなたは他のクラスとの関係を知ることができるように一般的には、インタフェースに応じて見えます。

図C

関係

後者の例としては、独立して、特定の目的のための関係を示します。構文が正しいですが、一方でこれらの例は、その有効範囲内でより多くの意味を含むようにさらに改良することができます。

依存性(依存)

「使用」関係指定した後、他のインスタンスが(依存影響を及ぼす可能性がある、エンティティ間の物理的変化を意味図D)。より具体的には、それはしないクラスまたはオブジェクトの範囲内参考例の任意のタイプに変換することができます。これは、ローカル変数、メソッド呼び出し(示されるように)、またはクラス(同じ時間が存在しない場合、そのクラスのインスタンス)の静的メソッドへの参照によって得られたオブジェクトへの参照を含みます。また、パッケージとパッケージとの間の関係を表すために、「依存性」を利用することができます。パッケージには、あなたがそれらのパッケージの様々なクラス間の関係になるように、クラスが含まれており、包装袋との関係を示しているため。

図D


協会(協会)

エンティティ間の構造関係は、オブジェクトが相互接続されることを示しています。矢印は、ナビゲーション機能を指定するために使用され、任意です。双方向のナビゲーション機能を示唆する矢印が、存在しない場合。Javaでは、アソシエーション(図Eに示すように)、図Eのコードの「Java」領域として、インスタンス変数のスコープに変換されます。他の修飾は、協会に追加することができます。多重度(多重度)修飾子は、インスタンス間の関係ことを意味します。例示的なコードでは、従業員は、ゼロ以上のオブジェクトタイムカードを有していてもよいです。しかし、それぞれのタイムカードは、単一の従業員に属します。

図E

重合(集約)

重合(図F.は)関連、二つのクラスの間の関係のグローバル/ローカル代表の形態です。暗示その概念に同じレベルに2つのクラスの関連を示唆しているローカルより高い概念レベル、全体の重合。重合はまた、Javaでスコープのインスタンス変数に変換することができます。

相関と純粋に概念的の凝集、及び厳密なセマンティクスに反映さの差。重合の例は、ループが図に存在しないことを意味します。つまり、一方向だけの関係。

図F



(組成物)の合成

(合成図Gは)「ローカル」生存「トータル」内部デューティを示唆し、重合の特別な形態です。合成はまた、非共有です。だから、全体の部分的な破壊と必ずしも必要ではないがが破壊されていますが、状態の生存を維持するための全体または部分的に責任を負う、またはその破壊のために責任を負うこと。他の地域の全体的なとは共有されません。しかし、全体的な所有権は、次に、生存の義務を負います別のオブジェクトに転送することができます。

従業員の関係と、たとえば、「合成」ではなく、として表さタイムカード、おそらくより適して「協会。」

図G。

一般化(一般化)

汎化(図Hは)、より一般的なの要素、より具体的な要素との関係を示しています。汎化は、UMLの要素が継承をモデル化するために使用されています。Javaでは、使用が拡張直接的な関係を示すためのキーワードを。

図H


実現(実現)

例(図I 2つのエンティティ間の契約を指定する)の関係。換言すれば、契約の実体定義は、別のエンティティは、契約の履行を確保するためしています。Javaアプリケーションのモデリングは、関係を達成することができる場合は、直接実装して表現するためのキーワードを。

图I


ます。https://my.oschina.net/lendylongli/blog/226785で再現

おすすめ

転載: blog.csdn.net/weixin_34409357/article/details/92576602