//スーパークラス
class Car {
//インスタンス変数
protected int num;
protected double gas;
//コンストラクタの定義==オブジェクトの初期化
//メソッドとは違い、自由に呼び出せないので、自動的に初期値をいれる
public Car(){ //引数なしコンストラクタ
num = 0;
gas = 0.0;
System.
out.
println("車を作成しました"); }
public Car(int n,double g){ //引数ありコンストラクタ
num = n;
gas = g;
System.
out.
println("ナンバーは"+num
+"、ガソリン量は"+gas
+"です"); }
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(){ //引数なしコンストラクタ
course = 0;
System.
out.
println("レーシングカーを作成"); }
// public RacingCar(int n,double g,int c){ //引数ありしコンストラクタ
// super(n,g); //スーパークラスの引数2個のコンストラクタ呼ぶ
// course = c;
// System.out.println("コース番号"+course+"のレーシングカーを作成");
// }
public void setCourse(int c){
course = c;
System.
out.
println("コース番号を"+course
+"にしました"); }
public void show(){ //サブクラスのshow()メソッド
System.
out.
println("レーシングカーのナンバーは"+num
+"です"); System.
out.
println("ガソリン量は"+gas
+"です"); System.
out.
println("コース番号"+course
+"です"); }
}
class Sample1{
public static void main
(String[] args
) {
//サブクラスのオブジェクト作成
Car car1 = new RacingCar(); //サブクラスのオブジェクトはスーパークラス型の変数でも扱える。
car1.setCar(1234,20.5);
car1.show();
}
}
Ly/jgrnjg7zjg5Hjg7zjgq/jg6njgrkKY2xhc3MgQ2FyIHsKCS8v44Kk44Oz44K544K/44Oz44K55aSJ5pWwCglwcm90ZWN0ZWQgaW50IG51bTsKCXByb3RlY3RlZCBkb3VibGUgZ2FzOwoJCgkvL+OCs+ODs+OCueODiOODqeOCr+OCv+OBruWumue+qT0944Kq44OW44K444Kn44Kv44OI44Gu5Yid5pyf5YyWCgkvL+ODoeOCveODg+ODieOBqOOBr+mBleOBhOOAgeiHqueUseOBq+WRvOOBs+WHuuOBm+OBquOBhOOBruOBp+OAgeiHquWLleeahOOBq+WIneacn+WApOOCkuOBhOOCjOOCiwoJcHVibGljIENhcigpewkvL+W8leaVsOOBquOBl+OCs+ODs+OCueODiOODqeOCr+OCvwoJCW51bSA9IDA7CgkJZ2FzID0gMC4wOwoJCVN5c3RlbS5vdXQucHJpbnRsbigi6LuK44KS5L2c5oiQ44GX44G+44GX44GfIik7Cgl9CgkKCXB1YmxpYyBDYXIoaW50IG4sZG91YmxlIGcpewkvL+W8leaVsOOBguOCiuOCs+ODs+OCueODiOODqeOCr+OCvwoJCW51bSA9IG47CgkJZ2FzID0gZzsKCQlTeXN0ZW0ub3V0LnByaW50bG4oIuODiuODs+ODkOODvOOBryIrbnVtKyLjgIHjgqzjgr3jg6rjg7Pph4/jga8iK2dhcysi44Gn44GZIik7Cgl9CgoJcHVibGljIHZvaWQgc2V0Q2FyKGludCBuLGRvdWJsZSBnKXsJLy/jgqTjg7Pjgrnjgr/jg7Pjgrnjg6Hjgr3jg4Pjg4kKCQludW0gPSBuOwoJCWdhcyA9IGc7CgkJU3lzdGVtLm91dC5wcmludGxuKCLjg4rjg7Pjg5Djg7zjga8iK251bSsi44CB44Ks44K944Oq44Oz6YeP44GvIitnYXMrIuOBp+OBmSIpOwoJfQoJCglwdWJsaWMgdm9pZCBzaG93KCl7IC8v44Kk44Oz44K544K/44Oz44K544Oh44K944OD44OJCgkJU3lzdGVtLm91dC5wcmludGxuKCLjg4rjg7Pjg5Djg7zjga8iK251bSsi44Gn44GZIik7CgkJU3lzdGVtLm91dC5wcmludGxuKCLjgqzjgr3jg6rjg7Pph4/jga8iK2dhcysi44Gn44GZIik7Cgl9Cn0KCi8v44K144OW44Kv44Op44K5CmNsYXNzIFJhY2luZ0NhciBleHRlbmRzIENhcnsKCXByaXZhdGUgaW50IGNvdXJzZTsKCQoJcHVibGljIFJhY2luZ0NhcigpeyAvL+W8leaVsOOBquOBl+OCs+ODs+OCueODiOODqeOCr+OCvwoJCWNvdXJzZSA9IDA7CgkJU3lzdGVtLm91dC5wcmludGxuKCLjg6zjg7zjgrfjg7PjgrDjgqvjg7zjgpLkvZzmiJAiKTsKCX0KCi8vCXB1YmxpYyBSYWNpbmdDYXIoaW50IG4sZG91YmxlIGcsaW50IGMpewkvL+W8leaVsOOBguOCiuOBl+OCs+ODs+OCueODiOODqeOCr+OCvwovLwkJCXN1cGVyKG4sZyk7IC8v44K544O844OR44O844Kv44Op44K544Gu5byV5pWwMuWAi+OBruOCs+ODs+OCueODiOODqeOCr+OCv+WRvOOBtgovLwkJCWNvdXJzZSA9IGM7Ci8vCQkJU3lzdGVtLm91dC5wcmludGxuKCLjgrPjg7zjgrnnlarlj7ciK2NvdXJzZSsi44Gu44Os44O844K344Oz44Kw44Kr44O844KS5L2c5oiQIik7Ci8vCX0JCgoJcHVibGljIHZvaWQgc2V0Q291cnNlKGludCBjKXsKCQljb3Vyc2UgPSBjOwoJCVN5c3RlbS5vdXQucHJpbnRsbigi44Kz44O844K555Wq5Y+344KSIitjb3Vyc2UrIuOBq+OBl+OBvuOBl+OBnyIpOwoJfQoJCglwdWJsaWMgdm9pZCBzaG93KCl7IC8v44K144OW44Kv44Op44K544Guc2hvdygp44Oh44K944OD44OJCgkJU3lzdGVtLm91dC5wcmludGxuKCLjg6zjg7zjgrfjg7PjgrDjgqvjg7zjga7jg4rjg7Pjg5Djg7zjga8iK251bSsi44Gn44GZIik7CgkJU3lzdGVtLm91dC5wcmludGxuKCLjgqzjgr3jg6rjg7Pph4/jga8iK2dhcysi44Gn44GZIik7CgkJU3lzdGVtLm91dC5wcmludGxuKCLjgrPjg7zjgrnnlarlj7ciK2NvdXJzZSsi44Gn44GZIik7Cgl9CgkKfQoKY2xhc3MgU2FtcGxlMXsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB7CgoJLy/jgrXjg5bjgq/jg6njgrnjga7jgqrjg5bjgrjjgqfjgq/jg4jkvZzmiJAKCUNhciBjYXIxID0gbmV3IFJhY2luZ0NhcigpOyAvL+OCteODluOCr+ODqeOCueOBruOCquODluOCuOOCp+OCr+ODiOOBr+OCueODvOODkeODvOOCr+ODqeOCueWei+OBruWkieaVsOOBp+OCguaJseOBiOOCi+OAggoJY2FyMS5zZXRDYXIoMTIzNCwyMC41KTsKCWNhcjEuc2hvdygpOwoJfQp9