終于搞定了,這題的綜合性挺強
*********父類*************
package com.zonghelianxi1;
public abstract class Car {
public int id;
public String name;
public int price;
public int sit;
public int load;
/*public int getSit() {? ? ? ? ? ? //getSit方法也可可以不要,直接在測試類中調(diào)用sit值即可
return sit;
}
*/
//public Car(){};? ? ? ? ? ? ? ? ? //這段沒用
/*public Car(int id,String name,int price,int sit,int load){
this.id=id;
this.name=name;
this.price=price;
this.sit=sit;
this.load=load;
}
*/
public abstract void? show();
}
************子類**************
package com.zonghelianxi1;
public class Seden extends Car {
public Seden(int id,String name,int price,int sit,int load){
this.id=id;
this.name=name;
this.price=price;
this.sit=sit;
this.load=load;
}
@Override
public void show() {
// TODO Auto-generated method stub
System.out.println(id+".\t"+name+"\t"+price+"元/天? "+"\t"+"載人:"+sit+"\t"+"載貨:"+load+"噸");
}
}
*************子類****************
package com.zonghelianxi1;
public class Pickup extends Car {
public Pickup(int id,String name,int price,int sit,int load){
this.id=id;
this.name=name;
this.price=price;
this.sit=sit;
this.load=load;
}
@Override
public void show() {
// TODO Auto-generated method stub
System.out.println(id+".\t"+name+"\t"+price+"元/天? "+"\t"+"載人:"+sit+"\t"+"載貨:"+load+"噸");
}
}
**********子類**********
package com.zonghelianxi1;
public class Truck extends Car {
public Truck(int id,String name,int price,int sit,int load){
this.id=id;
this.name=name;
this.price=price;
this.sit=sit;
this.load=load;
}
@Override
public void show() {
// TODO Auto-generated method stub
System.out.println(id+".\t"+name+"\t"+price+"元/天? "+"\t"+"載人:"+sit+"\t"+"載貨:"+load+"噸");
}
}
************測試類*************
package com.zonghelianxi1;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
// TODO Auto-generated method stub
Car a=new Seden(1,"奧迪A4",500,4,0);
Car b=new Seden(2,"馬自達6",400,4,0);
Car c=new Pickup(3,"皮卡雪6",450,4,2);
Car d=new Seden(4,"金龍",800,20,0);
Car e=new Truck(5,"松花江",400,0,4);
Car f=new Truck(6,"依維柯",1000,0,20);
Car[] car= {a,b,c,d,e,f};? ? //定義數(shù)組
Scanner in=new Scanner(System.in);
System.out.println("歡迎使用答答租車系統(tǒng)");
System.out.println("你是否要租車:\t1.是\t2.否");
int shifouzuche=in.nextInt();
while(shifouzuche!=1) {
Scanner in1=new Scanner(System.in);
System.out.println("歡迎使用答答租車系統(tǒng)");
System.out.println("你是否要租車:\t1.是\t2.否");
shifouzuche=in1.nextInt();
}
System.out.println("? ? ? ");? ? //這一句并沒什么用,只是為了留出間隔、看起來好看點,以下也一樣
if(shifouzuche==1) {
System.out.println("您可租車的類型及其價目表");
System.out.println("序號\t汽車名稱\t租金\t容量(人)\t容量(貨)");
}
a.show();
b.show();
c.show();
d.show();
e.show();
f.show();
System.out.println("? ? ? ");
Scanner in2=new Scanner(System.in);
System.out.println("請輸入您要租汽車的數(shù)量:");
int zucheshuliang=in2.nextInt();
while(zucheshuliang<=0||zucheshuliang>6) {
Scanner in3=new Scanner(System.in);
System.out.println("請輸入您要租汽車的數(shù)量:");
zucheshuliang=in3.nextInt();
}
System.out.println("? ? ? ");
Scanner in4=new Scanner(System.in);
System.out.println("請輸入租的天數(shù):");
int time=in4.nextInt();
int sumprice=0;
int sumsit=0;
int sumload=0;
for(int i=1;i<=zucheshuliang;? i++) {
System.out.println("? ? ? ");
System.out.println("請輸入第"+i+"輛車的序號:");
Scanner in5=new Scanner(System.in);
int xuHao=in5.nextInt();
? ?sumprice=sumprice+car[xuHao-1].price;? ?//不必調(diào)用getPrice方法
? ? if(car[xuHao-1].sit!=0) {
? ?sumsit=sumsit+car[xuHao-1].sit;
? ?System.out.print(car[xuHao-1].name+"可載人 "+"? ? ? ");
? ?}
? ?if(car[xuHao-1].load!=0) {
? ?sumload=sumload+car[xuHao-1].load;
? ?System.out.print(car[xuHao-1].name+"可載貨 "+"? ? ? ");
}??
? ?System.out.println("? ? ? ");
?}
System.out.println("? ? ? ?");
System.out.println("您的賬單: ");
System.out.println("總載客量:"+sumsit);
System.out.println("總載貨量:"+sumload+"噸");
System.out.println("總價格:"+sumprice*time+"元");
}
}
2018-09-25
很棒!想要兩積分,謝謝采納
2019-05-16
wdnmd點贊!
2018-12-10
測試類的有些代碼看不懂