クラス図って何?
クラス図は、システムの中で使われる「クラス」というものがどんなものかを図で表したものです。
「クラス」というのは、あるグループの物の共通の特徴や、できることをまとめたものです。
クラス図の基本要素
-
クラス(Class):
- 物の種類を表します。四角い箱で表します。
- 箱の中には、そのクラスが持っている情報(属性)と、そのクラスができること(メソッド)を書きます。
-
属性(Attribute):
- そのクラスが持っている情報です。例えば、「名前」や「年齢」など。
- クラスの箱の中の上の方に書きます。
-
メソッド(Method):
- そのクラスができることです。例えば、「歩く」や「話す」など。
- クラスの箱の中の下の方に書きます。
-
関係(Relationship):
- クラス同士がどんな関係があるかを線でつなげて表します。
クラス図の例
例: 動物とその特性
ここでは、動物のクラス図を描いてみましょう。
-
クラス
- 動物(Animal): 動物の共通の特徴やできることを持つクラス。
- 犬(Dog): 動物の一種で、犬の特徴やできることを持つクラス。
-
属性
- 動物(Animal): 名前(name)、年齢(age)
- 犬(Dog): 種類(breed)、吠える(bark)
-
メソッド
- 動物(Animal): 走る(run)、食べる(eat)
- 犬(Dog): 吠える(bark)
クラス図の描き方
1. クラスを描く
クラスは四角い箱で表します。まずは動物クラスを描いてみましょう。
+-----------------+
| Animal |
+-----------------+
| - name |
| - age |
+-----------------+
| + run() |
| + eat() |
+-----------------+
2. クラスに属性とメソッドを書く
クラスの中に属性(名前や年齢)とメソッド(走るや食べる)を書きます。
+-----------------+
| Animal |
+-----------------+
| - name |
| - age |
+-----------------+
| + run() |
| + eat() |
+-----------------+
3. クラス同士の関係を描く
次に、犬クラスを描き、動物クラスとの関係を描きます。犬は動物の一種なので、動物クラスを「親」にして、犬クラスを「子」にします。
+-----------------+ +-----------------+
| Animal |<----------+ | Dog |
+-----------------+ | +-----------------+
| - name | | | - breed |
| - age | | +-----------------+
+-----------------+ | | + bark() |
| + run() | | +-----------------+
| + eat() | |
+-----------------+ |
|
継承
|
|
完成したクラス図
最終的なクラス図は以下のようになります。
+-----------------+ +-----------------+
| Animal |<----------+ | Dog |
+-----------------+ | +-----------------+
| - name | | | - breed |
| - age | | +-----------------+
+-----------------+ | | + bark() |
| + run() | | +-----------------+
| + eat() | |
+-----------------+ |
まとめ
クラス図は、システムの中で使われる「クラス」がどんなものかを図で表したものです。
クラスには、持っている情報(属性)と、できること(メソッド)が書かれます。クラス同士の関係を線でつなげて、システムの構造をわかりやすく表します。
スポンサーリンク