#今回は継承についてまとめました
#継承(インヘリタンス)
継承とは、既に存在するクラス(基本クラス)を継承して、新しいクラス(派生クラス)を作成できる機能です。これによって、派生クラスは基本クラスを持つ機能を継承することができます。
#スーパークラス
スーパークラスとは、オブジェクト指向においてクラスの親子関係が成り立つ場合の親側のクラスのことである。
#派生クラス
サブクラスとは、オブジェクト指向において、クラスの親子関係が成り立つ場合の子側のクラスのことである。
#継承関係とは
継承関係の例として、「人間」と「学生」という2つのクラスについて考えて見ましょう。
「学生」は「人間」の一部です。 すなわち、「学生」ならば必ず「人間」としての特徴を備えています。 それとは逆に「人間」だからといって必ずしも「学生」であるとはいえません。 つまり、「学生」は「人間」の特別な場合である(「人間⊃学生」という包含関係が成り立つ)といえます。
例えば、「人間」には「名前」、「年齢」などの属性があります。 (ここでは簡単化のためこの2つの属性のみを考えます。) 「学生」は人間の一部分ですから、当然この2つの属性を備えています。 それに加え、「学生」は「学籍番号」という属性を持っています。
このように、あるクラス A がクラス B を包含するような関係にあるとき、 この関係を継承関係と呼び、 「B は A を継承する」とか「B は A から派生する(導出される)」といいます。 また、このとき、クラス A のことを「基底クラス(base class)」 または「スーパークラス(super class)」と呼び、 クラス B のことを「派生クラス(derived class)」 または「サブクラス(sub class)」と呼びます。