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

  

●サブクラスの宣言

Class サブクラス名 extends  スーパークラス名{
     サブクラスに追加するメンバー
     サブクラスのコンストラクタ(引数リスト){
      …
     }
}

  

●サンプル

class Car {  //スーパークラス宣言
       private int num;
       private double gas;
       public Car(){
        num = 0;
        gas = 0.0;
        System.out.println("車を作成しました");
       }
       public void setCar(int n, double g){
        num = n;
        gas = g;
        System.out.println("ナンバーを"+num+"にガソリンを"+gas+"にしました");
       }
       public void show(){
        System.out.println("車のナンバーは"+num+"です");
        System.out.println("ガソリンの量は"+gas+"です");
       }
}
//レーシングカークラス
class RacingCar extends Car{  //サブクラスの宣言
  private int course;  //追加するフィールド
    
    public racingCar(){  //サブクラスのコンストラクタ
     couse = 0;
     System.out.println("レーシングカーを作成しました。")
    }
    public void setCourse(int c){  //追加するメソッド
      course = c;
      System.out.println("コース番号を"+course+"にしました");
    }
}
class Sample1{
  public static void main(String args[]){
    RacingCar rccar1;
    rccar1 = new racingCar();  //サブクラスのオブジェクト作成

    rccar1.setCar(1234, 20.5);  //継承したメソッドの呼び出し
    rccar1.setCourse(5);  //追加したメソッドの呼び出し
  }
}
  

●実行結果

 車を作成しました。
 レーシングカーを作成しました
 ナンバーを1234にガソリン量を20.5にしました
 コース番号を5にしました