UMLクラス図及び図クラスとの関係

統一モデリング言語入門

統一モデリング言語(統一モデリング言語、UML)オブジェクト管理グループによって1997年にソフトウェアの青写真を設計するために使用される視覚的なモデリング言語である(OMG)は、オブジェクト指向のための国際標準モデリング言語として採用しました。ソフトウェアの設計は、動的および静的情報を表現することができ、簡単な、統一された、グラフィックを特徴とします。

統一モデリング言語は、ソフトウェア開発のすべての段階のためのモデリングと可視化のサポートを提供します。また、さらに、設計時間の短縮、通信をより簡潔にする開発コストを削減するために、ソフトウェアエンジニアリング、ソフトウェア設計の分野で新しいアイデア、新しい方法や新技術に統合されています。そのアプリケーションは、非常に一般的なシステムの開発のためだけではなく、幅の広い、そして並列分散システムのモデリングに適合しています。

ビューの異なる角度からUMLターゲットシステムは、ユースケース図、クラス図、オブジェクト図、状態図、アクティビティ図、タイミング図、コラボレーション図、図部材、図の展開図の9種類を定義します。


クラス、インタフェースとクラス図。

1.クラス

クラス(クラス)の動作とデータをカプセル化するプロパティ、メソッド、および関係同じ抽象オブジェクトは、オブジェクト指向プログラミング(OOP)の基礎である有し、そしてカプセル化、継承、および多型三つの特徴を有することを意味します。クラス名を含むUMLクラスにおいて、属性、操作及び分周器は矩形で表されています。

(1)クラス名(Name)は、文字列、例えば、学生です。

(2)のプロパティ(属性)は、属性クラス、すなわちクラスのメンバ変数を指します。次の形式でUML表記:

[可視性] Name属性:タイプ[=デフォルト]

-name:文字列たとえば

注:「可視性」、パブリック(公共)を含む、目に見える(プライベート)プライベート、保護された(保護)されたクラス属性外の要素や友人(フレンドリー)図のクラスの4種を表しています。それぞれのシンボルによって+、 - 、#、〜図。

(3)操作(オペレーション)を使用することができる任意のオブジェクトクラスの挙動の一例は、あるクラスのメソッドのメンバーです。次の形式でUML表記:

[可視性]名(パラメータリスト)[:戻り値の型]

+ディスプレイ():void例については。

図1は、クラスの生徒UML表現を示しています。

学生カテゴリ
図1学生クラス

2.インタフェース

インターフェース(Interface)は特別なクラスであるが、クラスの構造を有するインスタンス化することができない、サブクラスだけによって達成することができます。これは、抽象操作が含まれていますが、プロパティが含まれていません。これは、外部の可視コンポーネントまたは操作のクラスを記載します。UMLでは、図に小さな円の名前とインターフェース。

なお、図2 UMDLに示すグラフィカルクラスインターフェースです。


2グラフインタフェース図。

クラス3.図。

図クラス(クラス図)システムを表示するために使用されるクラス、インタフェース、および静的モデルコラボレーション静的構造とそれらの間の関係。主に、人々がシステム分析と設計段階の重要な製品であるソフトウェアシステムの理解は、それがコーディングとテストに基づいて、重要なモデル系である簡素化を支援するソフトウェアシステムの設計記述を構築するために使用されます。

図クラスクラスは、直接プログラミング言語で実装することができます。ソフトウェア開発のライフサイクル全体のクラス図は、それが最も一般的なマップのオブジェクト指向システムをモデル化され、効果的です。図3に示すように、「計算された矩形と円形の周囲および面積」クラス図で、グラフィカルインタフェースは、面積と周長を計算するための抽象メソッドを持つ矩形と円形のクラスのコールにアクセスするためのこれらの2つの方法を達成します。

図クラスにおける「矩形及び円形の周辺領域の計算」
図3は、「計算の面積を有する長方形の外周を丸くされた」クラス図。

クラス間の関係

ソフトウェアシステムでは、孤立して存在しないように、クラス間の様々な関係があります。クラスとクラスの間の結合の程度は弱いから強いに配置され、UMLのクラス図は、以下の関係である。依存関係、重合の間の関係、組み合わせ関係、及び汎化関係を達成します。前記一般化及び実装の結合度は、それらが最強であり、等しいです。

1.依存関係

依赖(Dependency)关系是一种使用关系,它是对象之间耦合度最弱的一种关联方式,是临时性的关联。在代码中,某个类的方法通过局部变量、方法的参数或者对静态方法的调用来访问另一个类(被依赖类)中的某些方法来完成一些职责。

在 UML 类图中,依赖关系使用带箭头的虚线来表示,箭头从使用类指向被依赖的类。图 4 所示是人与手机的关系图,人通过手机的语音传送方法打电话。

依存関係の例
图4 依赖关系的实例

2. 关联关系

关联(Association)关系是对象之间的一种引用关系,用于表示一类对象与另一类对象之间的联系,如老师和学生、师傅和徒弟、丈夫和妻子等。关联关系是类与类之间最常用的一种关系,分为一般关联关系、聚合关系和组合关系。我们先介绍一般关联。

关联可以是双向的,也可以是单向的。在 UML 类图中,双向的关联可以用带两个箭头或者没有箭头的实线来表示,单向的关联用带一个箭头的实线来表示,箭头从使用类指向被关联的类。也可以在关联线的两端标注角色名,代表两种不同的角色。

在代码中通常将一个类的对象作为另一个类的成员变量来实现关联关系。图 5 所示是老师和学生的关系图,每个老师可以教多个学生,每个学生也可向多个老师学,他们是双向关联。

提携の例
图5 关联关系的实例

3. 聚合关系

聚合(Aggregation)关系是关联关系的一种,是强关联关系,是整体和部分之间的关系,是 has-a 的关系。

聚合关系也是通过成员对象来实现的,其中成员对象是整体对象的一部分,但是成员对象可以脱离整体对象而独立存在。例如,学校与老师的关系,学校包含老师,但如果学校停办了,老师依然存在。

在 UML 类图中,聚合关系可以用带空心菱形的实线来表示,菱形指向整体。图 6 所示是大学和教师的关系图。

重合関係の例
图6 聚合关系的实例

4.组合关系

組成物(組成物)の関係も関係に関連付けられているだけでなく、全体の部分のタイプとの関係を示しているが、それは、重合の間に強い関係がcxmtains関係であるです。

全体のオブジェクトが存在しない一度組み合わせにおける関係は、制御オブジェクトは、オブジェクトの一部が存在しないであろう、オブジェクトからオブジェクトの全部分が存在しないことができ、オブジェクトのライフサイクル全体であってもよいです。例えば、頭と口ではなく、彼の頭の間の関係は、口が存在しません。

UMLのクラス図において、示される固体ダイヤモンド、全体ダイヤモンドポイントと実線との組み合わせの関係。図7は、頭、口のグラフです。

組み合わせ関係の例
実施例7図の組合せ関係

5.汎化

一般化(一般化)の関係は、オブジェクト間の結合度の最大値との関係であり、そして一般的な特別な関係、親子クラス間の関係を示し、それは継承され、ある関係。

UMLクラス図、示される一般中空三角矢印付き実線、サブクラス親クラスから矢印で。コードは、一般化を達成するために、オブジェクト指向継承メカニズムを使用して実装されます。例えば、学生のクラスは、クラス図を図1に示すクラスおよびサブクラス教師Personクラスです。

一般化の例
実施例8図の一般化

6.関係を実装

実装(実現)の関係は、インタフェースおよび実装クラスの間です。この関係では、クラスがインタフェースを実装し、動作クラスは、すべての抽象操作インタフェースが宣言実装しています。

UMLクラスの関係を達成するために、破線で図において、矢印は、インタフェースを実装するクラスから指し、中空の三角矢印を示しました。例えば、自動車及びボートクラス図は、図2に示すことに気づきました。

実現関係の例
例としては、図の関係を達成するために9。

おすすめ

転載: www.cnblogs.com/sallyiszxm/p/10979600.html