0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

スーパークラスとサブクラス

Last updated at Posted at 2024-11-14

DVDクラスの「スーパークラス(または親クラス)」と呼びます。逆にProductクラスから見ると、DVDクラスはProductクラスの「サブクラス(または子クラス)」と呼びます。

  • 下のリンクはクラス図が表示されていました

上はスーパークラス、下はサブクラス

スーパークラスを上に、サブクラスを下に配置し、サブクラスからスーパークラスへ向かって矢印を伸ばすことで、サブクラスがスーパークラスを継承していることを表します。

継承するよりも共通点で判断

継承は時々「スーパークラスの機能を完全に引き継ぐための仕組み」とみなされる場合がありますが、それは誤解です。そのように考えると飛行jに扱いづらいクラスが出来上がってしまいます。警鐘を使いたいと思ったきときは機能ではなく、性質や概念の共通点に着目してください。

is-aの関係

性質や概念が共通しているかどうかを判断する方法の一つは、「サブクラスはスーパークラスの一種である」と声に出して読んだ時に違和感がないか確かめることです。これは「is-aの関係」と呼ばれます。

特化と汎化

サブクラスはスーパークラスの性質を特化したもので、反対にスーパークラスはサブクラスの性質を汎化したものである、という関係も成り立ちます。「特化」とは性質がより細かく具体的になることで、「汎化」とは性質がより大雑把に抽象化されることです

  • 商品を買いに行くと言って何を買いに行くのか具体的にするとDVDになるみたいなことか
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?