1 / 16

クラス図(1) 後半

クラス図(1) 後半. FM 13010  村上 太一. 3-3 クラス図の関係その2 集約について. 関連がある2つのクラス間に 全体と部分の関係 が成り立つときに使用する。 例 「企業 は 社員 を持っている 」. 集約. 全体. 部分. 3-3 クラス図の関係その2 依存関係 について. 2つのモデル要素間に存在する利用関係を表現する。 クラス間で使用する場合は以下の 3 つである。 引数で参照する場合 ローカル変数で参照する場合 グローバルに 参照する場合. 3-3 クラス図の関係その2 依存関係について. 引数で参照する場合

Télécharger la présentation

クラス図(1) 後半

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. クラス図(1) 後半 FM13010 村上 太一

  2. 3-3 クラス図の関係その2集約について • 関連がある2つのクラス間に全体と部分の関係が成り立つときに使用する。 • 例 「企業 は 社員 を持っている 」 集約 全体 部分

  3. 3-3 クラス図の関係その2依存関係について3-3 クラス図の関係その2依存関係について • 2つのモデル要素間に存在する利用関係を表現する。 • クラス間で使用する場合は以下の3つである。 • 引数で参照する場合 • ローカル変数で参照する場合 • グローバルに参照する場合

  4. 3-3 クラス図の関係その2依存関係について3-3 クラス図の関係その2依存関係について • 引数で参照する場合 • クラスAがその保持している操作の引数でクラスBを受け取っている場合

  5. 3-3 クラス図の関係その2依存関係について3-3 クラス図の関係その2依存関係について ②ローカル変数で参照する場合 • クラスAがその保持している操作の中でクラスBをローカル変数として使用した場合 操作1(){ クラスB オブジェクト;//クラスBのオブジェクトの作成 オブジェクト1.操作2;//オブジェクト1(クラスB)の操作2の呼び出し ・ }

  6. 3-3 クラス図の関係その2依存関係について3-3 クラス図の関係その2依存関係について ③グローバルに参照する場合 • クラスBがモデル全体等から見えるように宣言され、クラスAがクラスBを参照している場合 操作1(){ オブジェクト1.操作2();//オブジェクト1(クラスB)の操作2の呼び出し ・ ・ }

  7. 3-3 クラス図の関係その2汎化について • 一般的な要素(スーパークラス)と特定化された要素(サブクラス)を表現する。 • サブクラスはスーパークラスの性質をすべて受け継ぎ、さらに独自の性質を持つ。

  8. 3-3 クラス図の関係その2汎化について ・・・ ・・・ シェアード・ターゲット・スタイル セパレート・ターゲット・スタイル

  9. 3-3 クラス図の関係その2汎化について スーパークラス 汎化

  10. 3-3 クラス図の関係その2抽象クラスについて3-3 クラス図の関係その2抽象クラスについて • 抽象クラスはオブジェクトを1つも持たない。 • サブクラスをまとめる意味で作成する為、抽象クラスは必ずサブクラスを持つ。

  11. 3-4クラスその2 ∽(アドバンス)クラス名(∽アドバンス)について • クラスにあるパッケージに属する場合には、クラスを表示する際に、パッケージ名をクラス名の前に修飾することができます。 パッケージ名 クラス名 学校 学校: :生徒 生徒

  12. 3-4クラスその2 ∽(アドバンス)クラス名(∽アドバンス)について • クラスの属性は下記の形式で多重度およびプロパティ文字列を表記することができる。 • 例・・・学生のクラス属性 ステレオタイプ可視性 名前 : 型表現 [多重度]=初期値{プロパティ文字列} ―学籍番号int[1]{unique} 生徒 -学年 : int[1] = 1 -学籍番号 : int[1]{unique}

  13. 3-4クラスその2 ∽(アドバンス)操作(∽アドバンス)について • クラスの操作は以下の形式で引数の入出力種別、引数のデフォルト値、プロパティ文字列を表記できる。 • 例・・・商品のクラス操作 ステレオタイプ可視性名前(入出力種別 引数名 : 型 デフォルト値) : 戻り値型{プロパティ文字列} ≪accessor≫    +生徒名設定(in 生徒名 : String デフォルト生徒):  void

  14. 3-4クラスその2 ∽(アドバンス)タグ付値、メタ属性(∽アドバンス) • タグ付値をUMLモデル要素に付けることにより、UMLのモデル要素に情報を付加することができる。 • タグ付値はクラスのみの情報を表現する。 • 例・・・乗り物クラスを用いてのタグ付値の表記

  15. 3-4クラスその2 ∽(アドバンス)派生属性(∽アドバンス) • 派生属性は、他の属性などから計算できる属性である。 • 例・・・「学校」クラスの「創立年数」は「開校年月日」と現在の日付から計算できるので、派生属性といえる 派生属性

  16. 3-4クラスその2 ∽(アドバンス)派生関連(∽アドバンス) • 派生関連は、派生属性と同様に、他の関連からたどることができる関連である。 • 例・・・「祖父」クラスは「父」の関連を使うことで「祖父」から見て「私」は子供の子供であるといえる。 二重の経路で、関連が引かれたので「孫である」は派生関連と なる。 子供である 子供である /孫である(派生関連)

More Related