這是我的代碼,僅供參考,歡迎大家指正,謝謝!!
//測試類
package?com.imooc;
import?java.util.Scanner;
public?class?Initial?{
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
Car[]?carsForRent={new?PassengerCar("奧迪A4",500,4),new?PassengerCar("馬自達(dá)6",?400,?4),new?PickUp("皮卡雪6",?450,?4,?2),new?PassengerCar("金龍",?800,20),new?Trunk("松花江",?400,4),new?Trunk("依維柯",1000,20)};
System.out.println("歡迎使用答答租車系統(tǒng):");
System.out.println("您是否需要租車:1是??0否");
Scanner?input=new?Scanner(System.in);
int?u=input.nextInt();
if(u==1){
System.out.println("您可租車的類型及價(jià)目表:");
System.out.println("序號\t汽車名稱\t租金\t\t容量");
int?i=1;
for(Car?currentCar:carsForRent){
if(currentCar?instanceof?PassengerCar){
System.out.println(""+i+"\t"+currentCar.getName()+"\t"+currentCar.getCost()+"/每天?\t\t"+currentCar.getCapacity()+"人");
}
else?if(currentCar?instanceof?PickUp){
System.out.println(""+i+"\t"+currentCar.getName()+"\t"+currentCar.getCost()+"/每天?\t\t"+currentCar.getCapacity()+"人/"+currentCar.getCapacity1()+"噸");
}
else{
System.out.println(""+i+"\t"+currentCar.getName()+"\t"+currentCar.getCost()+"/每天\t\t"+currentCar.getCapacity1()+"噸");
}
i++;
}
System.out.println("請輸入您要租汽車的數(shù)量:");
int?n=input.nextInt();
int?fair=0;
int?contain=0;
int?contain1=0;
int[]?a?=?new?int[6];
for(int?j=1;j<=n;j++){
System.out.println("請輸入第"+j+"輛汽車的序號:");
i=input.nextInt();
a[j-1]=i;
fair+=carsForRent[i-1].cost;
contain+=carsForRent[i-1].capacity;
contain1+=carsForRent[i-1].capacity1;
}
System.out.println("請輸入租車天數(shù):");
int?day=input.nextInt();
fair*=day;
System.out.println("您的賬單:");
System.out.println("***可載人的車有:");
int?h=0;
for(int?k=0;k<n;k++){
if(a[k]!=5||a[k]!=6){
System.out.print(carsForRent[(a[k]-1)].name+"\t");
h++;
}
}
if(h==0){
System.out.println("***沒有可以載人的車!");
}
else
System.out.println("共載人:"+contain+"人");
h=0;
System.out.println("***可以運(yùn)貨的車有:");
for(int?k=0;k<n;k++){
if(a[k]==5||a[k]==6||a[k]==3){
System.out.print(carsForRent[(a[k]-1)].name+"\t");
h++;
}
}
if(h==0){
System.out.println("***沒有可以運(yùn)貨的車!");
}
else
System.out.println("共載貨:"+contain1+"噸");
System.out.println("***租車總價(jià)格:"+fair+"元");
}
input.close();
System.out.println("感謝您的使用?。?!");
}
}//父類
package com.imooc;
public class Car {
String name;
int cost;
int capacity;
int capacity1;
public String getName(){
return name;
}
public int getCost(){
return cost;
}
public int getCapacity(){
return capacity;
}
public int getCapacity1(){
return capacity1;
}
}
//三個(gè)子類(1)
package com.imooc;
public class PassengerCar extends Car{
public PassengerCar(String name,int cost,int capacity){
this.name=name;
this.cost=cost;
this.capacity=capacity;
}
public String getName(){
return name;
}
public int getCost(){
return cost;
}
public int getCapacity(){
return capacity;
}
}
//三個(gè)子類(2)
package com.imooc;
public class PickUp extends Car {
public PickUp(String name,int cost,int capacity,int capacity1){
this.name=name;
this.cost=cost;
this.capacity=capacity;
this.capacity1=capacity1;
}
public String getName(){
return name;
}
public int getCost(){
return cost;
}
public int getCapacity(){
return capacity;
}
public int getCapacity1(){
return capacity1;
}
}
//三個(gè)子類(3)
package com.imooc;
public class Trunk extends Car {
public Trunk(String name,int cost,int capacity1){
this.name=name;
this.cost=cost;
this.capacity1=capacity1;
}
public String getName(){
return name;
}
public int getCost(){
return cost;
}
public int getCapacity1(){
return capacity1;
}
}
2017-01-17
37 行有錯(cuò)誤 ?imput
2016-02-18
57行,應(yīng)換成if(a[k]!=5&&a[k]!=6){ ?吧 。數(shù)組a長度為6,相當(dāng)于限制了借車的輛數(shù),只能借6輛。建議在輸入車輛序號時(shí)加一個(gè)是否小于6的判斷條件。 ?謝謝您提供的代碼,自己估計(jì)很難做出來。。
2016-02-17
好厲害,話說用繼承的話是不是可以只用寫子類的構(gòu)造方法,其余的返回價(jià)格 型號可以不用寫(從父類繼承)