/*所有汽車父類*/
public?abstract?class?Che?{
public?String?chename;
public?double?zaihuoliang;
public?int?zairenliang;
public?int?money;
Che(){
}
void?xianshi(){
}
}
/*貨車類*/
public?class?Huoche?extends?Che{
Huoche(String?chename,double?zaihuo,int?money){
this.chename?=?chename;
zaihuoliang?=?zaihuo;
this.money?=?money;?
}
void?xianshi(){
System.out.println("貨車型號:"+chename+"???載貨量:"+zaihuoliang+"噸???出租價"+money);
}
}
/*客車類*/
public?class?Keche?extends?Che{
Keche(String?chename,int?zairen,int?money){
this.chename?=?chename;
zairenliang?=?zairen;
this.money?=?money;
}
void?xianshi(){
System.out.println("客車型號:"+chename+"???載人量:"+zairenliang+"人???出租價"+money);
}
}
/*皮卡類*/
public?class?Pika?extends?Che{
Pika(String?chename,int?zairen,double?zaihuo,int?money){
this.chename?=?chename;
zairenliang?=?zairen;
zaihuoliang?=?zaihuo;
this.money?=?money;
}
????void?xianshi(){
???? System.out.println("皮卡型號:"+chename+"???載貨量:"+zaihuoliang+"噸???載人量:"+zairenliang+"人???出租價"+money);
????}
}
/*主類*/
import?java.util.Scanner;
public?class?Test?extends?Che{
public?static?void?main(String[]?args)?{
int?anniu;
int?zu,money=0,zairen=0;
double?zaihuo=0.0;
Scanner?shuru?=?new?Scanner(System.in);
do{
????System.out.println("歡迎來到租車系統(tǒng),你是來租車的嗎?(1.是?2.否)");
anniu?=?shuru.nextInt();
if(anniu!=1)
System.out.println("來都來了,再考慮考慮吧");
}while(anniu!=1);
Che?c1?=?new?Huoche("大貨車",20.0,1000);
Che?c2?=?new?Huoche("小貨車",5.0,500);
Che?c3?=?new?Keche("大客車",40,1000);
Che?c4?=?new?Keche("小客車",10,500);
Che?c5?=?new?Pika("寶馬皮卡車",5,3.0,1000);
Che?c6?=?new?Pika("屌絲皮卡車",2,2.0,100);
System.out.println("1.");
c1.xianshi();
System.out.println("2.");
c2.xianshi();
System.out.println("3.");
c3.xianshi();
System.out.println("4.");
c4.xianshi();
System.out.println("5.");
c5.xianshi();
System.out.println("6.");
c6.xianshi();
do{
System.out.println("以上是可以租的車輛,請問你要租幾輛?(輸入數(shù)字)");
anniu?=?shuru.nextInt();
}while(anniu<=0);
int?[]xinghao=new?int[anniu+1];
System.out.println("你要租"+anniu+"輛車,請依次按下車輛序號租車:");
Scanner?shuru2=new?Scanner(System.in);
int?i=0;
do{?i=i+1;
????do{
System.out.println("第"+i+"輛");
zu?=?shuru2.nextInt();
switch(zu){
case?1:money=money+1000;zairen=zairen+0;zaihuo=zaihuo+20.0;xinghao[i]=1;break;
case?2:money=money+500;zairen=zairen+0;zaihuo=zaihuo+5.0;xinghao[i]=2;break;
case?3:money=money+1000;zairen=zairen+40;zaihuo=zaihuo+0.0;xinghao[i]=3;break;
case?4:money=money+500;zairen=zairen+10;zaihuo=zaihuo+0.0;xinghao[i]=4;break;
case?5:money=money+1000;zairen=zairen+5;zaihuo=zaihuo+3.0;xinghao[i]=5;break;
case?6:money=money+500;zairen=zairen+2;zaihuo=zaihuo+2.0;xinghao[i]=6;break;
};
????}while(zu>=7||zu<=0);
}while(i!=anniu);
System.out.println("你租了"+anniu+"輛車,你的清單如下:");
System.out.println("租車總金額:"+money);
System.out.println("租車總載貨量:"+zaihuo+"噸");
System.out.println("租車總載人量:"+zairen+"人");
System.out.println("車型為下:");
for(int?j=1;j<=anniu;j++){
switch(xinghao[j]){
case?1:System.out.print(j+".大型貨車");break;
case?2:System.out.print(j+".小型貨車");break;
case?3:System.out.print(j+".大型客車");break;
case?4:System.out.print(j+".小型客車");break;
case?5:System.out.print(j+".寶馬皮卡車");break;
case?6:System.out.print(j+".屌絲皮卡車");break;
}
}
System.out.println("\n");
System.out.println("是否確定租車?(1.是?,?2.否)");
anniu=shuru2.nextInt();
if(anniu==1)
System.out.println("租車成功,謝謝你的光臨");
else
System.out.println("BOOM,系統(tǒng)崩潰了叫你亂按");
}
}
2015-07-16
建議每輛車的資料信息不要寫在主函數(shù)里,直接寫在每個類的構造函數(shù)里最好,在主函數(shù)里只寫操作就可以
2015-07-16
就是一個簡單的類的一個小例子,根據(jù)你主函數(shù)里的流程依次下來,不難理解的就是要你選車輛,先是把所有車輛羅列出來供你選,選好車輛后,會將車輛的信息顯示出來,僅此而已。注意一下那些輸出語句,程序里的輸出提示很有幫助