クラスを継承するということは、親クラス(継承元)のクラスの機能を引き継ぐことです。
こうすることで、何か機能を追加する際に途中から作成することができる。
一部、共通する処理はあるけど別の機能を作りたいという時に役に立ちます。
アクセス修飾子にも子クラスは親クラスのメソッドや変数などを引き継げる。つまり、途中から作成することができます。
例えるなら
ドラクエ5でビアンカとフローラ(リメイク版ではデボラも追加)のどちらを嫁にするかというのでかなり議論になりました。
当然ながら、結婚相手を途中で変えることはできないし、その選択はエンディングまで影響するため、悩むプレイヤーは多いと思います。
そのせいか、結婚前夜で一旦セーブし、ビアンカを選んだ冒険の書、フローラを選んだ冒険の書をそこからそれぞれ派生して作るプレイヤーは多かったと思います。
この時、結婚前夜の冒険の書が親クラス(スーパークラス)で、結婚後のそれぞれの冒険の書が結婚前夜の冒険の書の子クラスになります。
特徴もバッチリです。
継承の仕方
クラス定義の際にextendsをつけることで継承できます。
継承できるクラスは一つだけで、二つ以上のクラスを継承することは、Javaではできません。
class クラス名 extends 親クラス名 {
クラスの内部
}
クラスの内部
}
以下はProgramMemoExampleクラスを継承した例です。
public class Sample extends ProgramMemoExample { public static void main(String[] args) { //メイン処理 } }