本章のまとめ
1.6 本章のまとめ
この章では、次のようなことを学習しました。
Pickup Lecture
- クラスを拡張して作成することで、既存のクラスの機能を継承したクラスを作成できる。
- 機能を継承したクラスをサブクラス、継承元のクラスをスーパークラスと呼ぶ。
- サブクラスは、スーパークラスのメンバ全てを継承する。
- サブクラスのオブジェクト生成を行うと、スーパークラスのコンストラクタが必ず呼び出される。
- サブクラスのオブジェクトからスーパークラスのメンバを利用できる。
- サブクラス内のメンバからスーパークラスのメンバを利用できる。
- サブクラス内ではsuperキーワードでメンバをスーパークラスのものであると明示的にできる。
- スーパークラスと同一のメソッドをサブクラスで再定義することで、サブクラスのメソッドが優先になる機能をオーバーライド機能と呼ぶ。
- 1つのスーパークラスの機能を継承した複数のサブクラスを作成できる。
- 複数のスーパークラスの機能を継承したサブクラスは作成できない。
- final修飾子を利用するとサブクラスでオーバーライドを禁止や、クラスの継承自体を禁止することができる。
- クラス作成時にクラスの拡張を行わない場合、必ずObjectクラスが継承元になる。
- 全てのJavaクラスはObjectクラスのメンバを継承している。
既存のクラスを利用することで、足りない機能部分の設計に集中することができ、効率的にプログラム作成をしていくことができます。クラスの拡張を行うことで様々な制約が出てきますが、それを補って余りあるクラスの強力な機能の1つ言えます。
このクラスを拡張する仕組みは大変有用ですので、必ず行えるように覚えておいて下さい。