正答例&実行結果例
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
package challenge11; abstract class Car { String name; //車種名 int price; //価格 int fuel; //燃費 int num; //乗員 public Car(String name,int price,int fuel,int num) { this.name = name; this.price = price; this.fuel = fuel; this.num = num; } /* * 広告表示 ベース部分のみ */ public void print() { System.out.println(name); System.out.println("金額:"+price); System.out.println("燃費:"+fuel+":"+"乗員:"+num); } abstract void other_print(); //車種特有の広告表示 } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
package challenge11; public class KeiCar extends Car{ int air; //エアコン有無 1:有り 0:無し public KeiCar(String name, int price, int fue, int num,int air) { super(name, price, fue, num); this.air = air; } @Override void other_print() { if(air==1) { System.out.println("エアコン:有り"); }else { System.out.println("エアコン:無し"); } } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
package challenge11; public class FamilyCar extends Car{ int displace; //排気量 int auto; //自動運転 1:有り、2:なし public FamilyCar(String name, int price, int fue, int num,int displace,int auto) { super(name, price, fue, num); this.displace = displace; this.auto = auto; } @Override void other_print() { System.out.println("排気量:"+displace); if( auto == 1) { System.out.println("自動運転:有り"); }else { System.out.println("自動運転:有り"); } } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
package challenge11; public class Main { static Car[] kei = { new KeiCar("A",300000,24,4,1), new KeiCar("B",280000,23,4,0), new FamilyCar("H",450000,18,5,1000,1), }; public static void main(String[] args) { // TODO 自動生成されたメソッド・スタブ print(); } /* *広告表示 */ public static void print() { System.out.println(); for(int i=0;i<kei.length;i=i+1) { kei[i].print(); kei[i].other_print(); System.out.println(); } } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
A 金額:300000 燃費:24:乗員:4 エアコン:有り B 金額:280000 燃費:23:乗員:4 エアコン:無し H 金額:450000 燃費:18:乗員:5 排気量:1000 自動運転:有り |