package?com.dadaleasing;
import?java.util.*;
public?class?InitialDaDaLeasing?{
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
//輸出基礎(chǔ)界面代碼塊
Scanner?input?=?new?Scanner(System.in);
Face?face?=?new?Face(); //創(chuàng)建face引用指向Face類
face.showInitial(); //輸出提示信息
if(input.nextInt()?==?1){
;
}else{
System.out.println("歡迎您再次使用!");
return?;
}
face.showFace(); //在控制臺上打印出基本的板塊
//創(chuàng)建六種車對象,選擇車代碼塊
CarLoad?toyota?=?new?Toyota();
CarLoad?fordMustang?=?new?FordMustang();
CarLoad?hongdaGod?=?new?HongdaGod();
CarLoad?fordGod?=?new?FordGod();
CarLoad?mazda?=?new?Mazda();
CarLoad?carola?=?new?Carola();
CarOption?carOption?=?new?CarOption(toyota,?fordMustang,?hongdaGod,?fordGod,?mazda,?carola);
carOption.option();
System.out.println("請在購物車內(nèi)結(jié)賬");
System.out.println("******歡迎下次光臨!******");
}
}
package?com.dadaleasing;
//抽象類
public?abstract?class?CarLoad?{
public?abstract?int?loading(); //用于給子類返回載貨重量
public?abstract?int?seating(); //用于給子類返回載人數(shù)量
public?abstract?double?money(); //用于給子類返回租賃單價
}
package?com.dadaleasing;
//在控制臺上打印出基礎(chǔ)界面
public?class?Face?{
public?void?showInitial(){
System.out.println("******歡迎使用達(dá)達(dá)車輛租賃!*****");
System.out.println("租賃車輛請輸入1,退出請輸入其余任意數(shù)字");
}
public?void?showFace(){
System.out.println("================================================================================================");
System.out.println("以下為本公司車輛租賃的基本信息:");
System.out.printf("車輛編號????????車輛類型????????車輛品牌????????車輛載客數(shù)量????????車輛載貨重量(kg)????????租賃價格(rmb/天)\n");
System.out.printf("%4d?????????小轎車???????????豐田86???????%4d????????????%4d??????????????%9d\n",?1,?2,?0,?200);
System.out.printf("%4d?????????小轎車???????????福特野馬?????????%7d????????????%4d??????????????%9d\n",?2,?2,?0,?200);
System.out.printf("%4d?????????大貨車???????????東風(fēng)大力神??????%6d????????????%4d?????????????%9d\n",?3,?2,?50000,?1000);
System.out.printf("%4d?????????大貨車???????????福特大力神??????%6d????????????%4d?????????????%9d\n",?4,?2,?60000,?1300);
System.out.printf("%4d?????????皮卡車???????????馬自達(dá)???????%12d?????????????%4d???????????????%7d\n",?5,?4,?800,?500);
System.out.printf("%4d?????????皮卡車???????????卡羅拉???????%12d?????????????%4d???????????????%7d\n",?6,?4,?1000,?700);
}
}
package?com.dadaleasing;
import?java.util.*;
public?class?CarOption?{
//定義六個Object類型變量用于保存從主函數(shù)接受的數(shù)據(jù)
CarLoad?toyota;
CarLoad?fordMustang;
CarLoad?hongdaGod;
CarLoad?carola;
CarLoad?fordGod;
CarLoad?mazda;
int?intAllCarSums?=?0; //定義一個變量用于統(tǒng)計租賃汽車總數(shù)
int?intAllLoading?=?0;?? //定義一個變量用于統(tǒng)計租賃汽車總共載貨重量
int?intAllSeating?=?0; //定義一個變量用于統(tǒng)計租賃汽車的總載人數(shù)
int?intAllMoney?=?0; //定義一個變量用于統(tǒng)計租賃汽車總共需要花費(fèi)的金額
int?carSums?=?0; //定義一個變量用于保存用戶輸入租賃的數(shù)量
int?carDays?=?0; //定義一個變量用于保存用戶輸入租賃的天數(shù)
//重寫有參構(gòu)造函數(shù),用于從入口類中接受創(chuàng)建的對象
public??CarOption(CarLoad?newToyota,?CarLoad?newFordMustang,?CarLoad?newHongdaGod,?CarLoad?newCarola,
??????????????CarLoad?newFordGod,?CarLoad?newMazda){
//將入口類中創(chuàng)建的對象與本類中的Object變量相對應(yīng)的賦值
toyota?=?newToyota;
fordMustang?=?newFordMustang;
hongdaGod?=?newHongdaGod;
carola?=?newCarola;
fordGod?=?newFordGod;
mazda?=?newMazda;
}
void?option(){
//租賃代碼塊
Scanner?input?=?new?Scanner(System.in);
for(int?intKeyboard?=?1;?intKeyboard?!=?0;){
System.out.println("請輸入要租賃車輛的編號,輸入0結(jié)賬:");
?intKeyboard?=?input.nextInt();
switch(intKeyboard){
case?1?:{
System.out.println("請輸入您想要租賃的數(shù)量:");
carSums?=?input.nextInt();
System.out.println("請輸入您想要租賃的天數(shù)");
carDays?=?input.nextInt();
System.out.println("您想要租賃"?+?carSums?+?"輛豐田86共"?+?carDays?+?"天,一共可乘坐乘客"?+?(toyota.seating()?*?carSums)?+
???????????"人,一共可裝載貨物"?+?(toyota.loading()?*?carSums)+?"kg,一共需要花費(fèi)"?+?(toyota.money()?*?carDays
???????? ???*?carSums)?+?"元人民幣");
intAllLoading?+=?(toyota.loading()?*?carSums);
intAllSeating?+=?(toyota.seating()?*?carSums);
intAllMoney?+=?(toyota.money()?*?carSums?*?carDays);
intAllCarSums?+=?carSums;
};break;
case?2?:{System.out.println("請輸入您想要租賃的數(shù)量:");
carSums?=?input.nextInt();
System.out.println("請輸入您想要租賃的天數(shù)");
carDays?=?input.nextInt();
System.out.println("您想要租賃"?+?carSums?+?"福特野馬共"?+?carDays?+?"天,一共可乘坐乘客"?+?(fordMustang.seating()?*?carSums)?+
???????????"人,一共可裝載貨物"?+?(fordMustang.loading()?*?carSums)+?"kg,一共需要花費(fèi)"?+?(fordMustang.money()?*?carDays
???????? ???*?carSums)?+?"元人民幣");
intAllLoading?+=?(fordMustang.loading()?*?carSums);
intAllSeating?+=?(fordMustang.seating()?*?carSums);
intAllMoney?+=?(fordMustang.money()?*?carSums?*?carDays);
intAllCarSums?+=?carSums;
};break;
case?3?:{System.out.println("請輸入您想要租賃的數(shù)量:");
carSums?=?input.nextInt();
System.out.println("請輸入您想要租賃的天數(shù)");
carDays?=?input.nextInt();
System.out.println("您想要租賃"?+?carSums?+?"輛東風(fēng)大力神共"?+?carDays?+?"天,一共可乘坐乘客"?+?(hongdaGod.seating()?*?carSums)?+
???????????"人,一共可裝載貨物"?+?(hongdaGod.loading()?*?carSums)+?"kg,一共需要花費(fèi)"?+?(hongdaGod.money()?*?carDays
???????? ???*?carSums)?+?"元人民幣");
intAllLoading?+=?(hongdaGod.loading()?*?carSums);
intAllSeating?+=?(hongdaGod.seating()?*?carSums);
intAllMoney?+=?(hongdaGod.money()?*?carSums?*?carDays);
intAllCarSums?+=?carSums;
};break;
case?4?:{System.out.println("請輸入您想要租賃的數(shù)量:");
carSums?=?input.nextInt();
System.out.println("請輸入您想要租賃的天數(shù)");
carDays?=?input.nextInt();
System.out.println("您想要租賃"?+?carSums?+?"輛福特大力神共"?+?carDays?+?"天,一共可乘坐乘客"?+?(fordGod.seating()?*?carSums)?+
???????????"人,一共可裝載貨物"?+?(fordGod.loading()?*?carSums)+?"kg,一共需要花費(fèi)"?+?(fordGod.money()?*?carDays
???????? ???*?carSums)?+?"元人民幣");
intAllLoading?+=?(fordGod.loading()?*?carSums);
intAllSeating?+=?(fordGod.seating()?*?carSums);
intAllMoney?+=?(fordGod.money()?*?carSums?*?carDays);
intAllCarSums?+=?carSums;
};break;
case?5?:{System.out.println("請輸入您想要租賃的數(shù)量:");
carSums?=?input.nextInt();
System.out.println("請輸入您想要租賃的天數(shù)");
carDays?=?input.nextInt();
System.out.println("您想要租賃"?+?carSums?+?"輛馬自達(dá)共"?+?carDays?+?"天,一共可乘坐乘客"?+?(mazda.seating()?*?carSums)?+
???????????"人,一共可裝載貨物"?+?(mazda.loading()?*?carSums)+?"kg,一共需要花費(fèi)"?+?(mazda.money()?*?carDays
???????? ???*?carSums)?+?"元人民幣");
intAllLoading?+=?(mazda.loading()?*?carSums);
intAllSeating?+=?(mazda.seating()?*?carSums);
intAllMoney?+=?(mazda.money()?*?carSums?*?carDays);
intAllCarSums?+=?carSums;
};break;
case?6?:{System.out.println("請輸入您想要租賃的數(shù)量:");
carSums?=?input.nextInt();
System.out.println("請輸入您想要租賃的天數(shù)");
carDays?=?input.nextInt();
System.out.println("您想要租賃"?+?carSums?+?"輛卡羅拉共"?+?carDays?+?"天,一共可乘坐乘客"?+?(carola.seating()?*?carSums)?+
???????????"人,一共可裝載貨物"?+?(carola.loading()?*?carSums)+?"kg,一共需要花費(fèi)"?+?(carola.money()?*?carDays
???????? ???*?carSums)?+?"元人民幣");
intAllLoading?+=?(carola.loading()?*?carSums);
intAllSeating?+=?(carola.seating()?*?carSums);
intAllMoney?+=?(carola.money()?*?carSums?*?carDays);
intAllCarSums?+=?carSums;
}
}
System.out.println("您當(dāng)前租賃車輛共"?+?intAllCarSums?+?"輛,總共可以乘坐"?+?intAllSeating?+?"名乘客,可載物"?+?intAllLoading
+?"kg,總計消費(fèi)"?+?intAllMoney?+?"元人民幣");
}
System.out.println("================================================================================================================");
System.out.println("您總計租賃車輛共"?+?intAllCarSums?+?"輛,總共可以乘坐"?+?intAllSeating?+?"名乘客,可載物"?+?intAllLoading
+?"kg,總計消費(fèi)"?+?intAllMoney?+?"元人民幣");
}
}
package?com.dadaleasing;
public??class?Toyota?extends?CarLoad?{
private?final?int?intLoading?=?0;
private?final?int?intSeating?=?2;
private?final?int?intMoney?=?200;
@Override
public?int?loading()?{
//?TODO?Auto-generated?method?stub
return?intLoading;
}
@Override
public?int?seating()?{
//?TODO?Auto-generated?method?stub
return?intSeating;
}
@Override
public?double?money()?{
//?TODO?Auto-generated?method?stub
return?intMoney;
}
}
package?com.dadaleasing;
public?class?FordMustang?extends?CarLoad?{
private?final?int?intLoading?=?0;
private?final?int?intSeating?=?2;
private?final?int?intMoney?=?200;
@Override
public?int?loading()?{
//?TODO?Auto-generated?method?stub
return?intLoading;
}
@Override
public?int?seating()?{
//?TODO?Auto-generated?method?stub
return?intSeating;
}
@Override
public?double?money()?{
//?TODO?Auto-generated?method?stub
return?intMoney;
}
}
package?com.dadaleasing;
public?class?HongdaGod?extends?CarLoad?{
private?final?int?intLoading?=?5000;
private?final?int?intSeating?=?2;
private?final?int?intMoney?=?1000;
@Override
public?int?loading()?{
//?TODO?Auto-generated?method?stub
return?intLoading;
}
@Override
public?int?seating()?{
//?TODO?Auto-generated?method?stub
return?intSeating;
}
@Override
public?double?money()?{
//?TODO?Auto-generated?method?stub
return?intMoney;
}
}
package?com.dadaleasing;
public?class?HongdaGod?extends?CarLoad?{
private?final?int?intLoading?=?5000;
private?final?int?intSeating?=?2;
private?final?int?intMoney?=?1000;
@Override
public?int?loading()?{
//?TODO?Auto-generated?method?stub
return?intLoading;
}
@Override
public?int?seating()?{
//?TODO?Auto-generated?method?stub
return?intSeating;
}
@Override
public?double?money()?{
//?TODO?Auto-generated?method?stub
return?intMoney;
}
}
package?com.dadaleasing;
public?class?Mazda?extends?CarLoad?{
private?final?int?intLoading?=?4;
private?final?int?intSeating?=?800;
private?final?int?intMoney?=?500;
@Override
public?int?loading()?{
//?TODO?Auto-generated?method?stub
return?intLoading;
}
@Override
public?int?seating()?{
//?TODO?Auto-generated?method?stub
return?intSeating;
}
@Override
public?double?money()?{
//?TODO?Auto-generated?method?stub
return?intMoney;
}
}
package?com.dadaleasing;
public?class?Carola?extends?CarLoad?{
private?final?int?intLoading?=?1000;
private?final?int?intSeating?=?4;
private?final?int?intMoney?=?700;
@Override
public?int?loading()?{
//?TODO?Auto-generated?method?stub
return?intLoading;
}
@Override
public?int?seating()?{
//?TODO?Auto-generated?method?stub
return?intSeating;
}
@Override
public?double?money()?{
//?TODO?Auto-generated?method?stub
return?intMoney;
}
}
//程序能在MyEclipse2014上跑起來,但是在選車那里選編號4以后的車輸出出來的信息就會混亂,編號6的車的信息會出現(xiàn)在編號5上,編號4的車的信息會出現(xiàn)在編號6上
//實(shí)在找不出哪里錯了
2016-12-03
是不是對象使用錯誤。將對象搞錯了?