幫忙看一下我寫的有沒有問題 謝謝
車類
package?com.DiDiCar;
public?abstract?class???Car?{
?????private?String?carName;?????//車名
?????private?int?carId;?????????????????//車ID???
?????private?float?price;?????????????????//租價
?????private?float?carCargo;?????????//載貨量
?????private?int?carPerson;?????????//載客量
?????
?????
?????public?abstract?void?showInfo();????//?顯示車信息
?????
?????
?????
public?String?getCarName()?{
return?carName;
}
public?void?setCarName(String?carName)?{
this.carName?=?carName;
}
public?int?getCarId()?{
return?carId;
}
public?void?setCarId(int?carId)?{
this.carId?=?carId;
}
public?float?getPrice()?{
return?price;
}
public?void?setPrice(int?price)?{
this.price?=?price;
}
public?float?getCarCargo()?{
return?carCargo;
}
public?void?setCarCargo(int?carCargo)?{
this.carCargo?=?carCargo;
}
public?int?getCarPerson()?{
return?carPerson;
}
public?void?setCarPerson(int?carPerson)?{
this.carPerson?=?carPerson;
}
?????
?????
?????
}汽車類
package?com.DiDiCar;
public?class?Automobile?extends?Car?{
????private?String?carName;?????//車名
????private?int?carId;?????????????????//車ID???
????private?float?price;?????????????????//租價
????private?int?carPerson;?????????//載客量
????
public?Automobile(String?carName,?int?carId,?int?price,?int?carPerson)?{
super();
this.carName?=?carName;
this.carId?=?carId;
this.price?=?price;
this.carPerson?=?carPerson;
}
@Override
public?void?showInfo()?{
//?TODO?Auto-generated?method?stub
System.out.println(getCarId()+"."+'\t'?+?getCarName()?+?'\t'?+getPrice()?+"元/天"?+?'\t'?+?"載人:"+getCarPerson()?+"人");
}
public?String?getCarName()?{
return?carName;
}
public?void?setCarName(String?carName)?{
this.carName?=?carName;
}
public?int?getCarId()?{
return?carId;
}
public?void?setCarId(int?carId)?{
this.carId?=?carId;
}
public?float?getPrice()?{
return?price;
}
public?void?setPrice(int?price)?{
this.price?=?price;
}
public?int?getCarPerson()?{
return?carPerson;
}
public?void?setCarPerson(int?carPerson)?{
this.carPerson?=?carPerson;
}
????
????
????
}貨車類
package?com.DiDiCar;
public?class?Truck?extends?Car?{
????private?String?carName;?????//車名
????private?int?carId;?????????????????//車ID???
????private?float?price;?????????????????//租價
????private?float?carCargo;?????????//載貨量
????
public?Truck(String?carName,?int?carId,?int?price,?int?carCargo)?{
super();
this.carName?=?carName;
this.carId?=?carId;
this.price?=?price;
this.carCargo?=?carCargo;
}
@Override
public?void?showInfo()?{
//?TODO?Auto-generated?method?stub
System.out.println(getCarId()+"."+'\t'?+?getCarName()?+?'\t'?+getPrice()?+"元/天"?+?'\t'?+?"載貨:"+getCarCargo()?+"噸");
}
public?String?getCarName()?{
return?carName;
}
public?void?setCarName(String?carName)?{
this.carName?=?carName;
}
public?int?getCarId()?{
return?carId;
}
public?void?setCarId(int?carId)?{
this.carId?=?carId;
}
public?float?getPrice()?{
return?price;
}
public?void?setPrice(int?price)?{
this.price?=?price;
}
public?float?getCarCargo()?{
return?carCargo;
}
public?void?setCarCargo(int?carCargo)?{
this.carCargo?=?carCargo;
}
????
????
????
}皮卡車類
package?com.DiDiCar;
public?class?Pickup?extends?Car?{
????private?String?carName;?????//車名
????private?int?carId;?????????????????//車ID???
????private?float?price;?????????????????//租價
????private?float?carCargo;?????????//載貨量
????private?int?carPerson;?????????//載客量
????
????
public?Pickup(String?carName,?int?carId,?int?price,?int?carCargo,
int?carPerson)?{
super();
this.carName?=?carName;
this.carId?=?carId;
this.price?=?price;
this.carCargo?=?carCargo;
this.carPerson?=?carPerson;
}
@Override
public?void?showInfo()?{
//?TODO?Auto-generated?method?stub
System.out.println(getCarId()+"."+'\t'?+?getCarName()?+?'\t'?+getPrice()?+"元/天"?+?'\t'?+?"載人:"+getCarPerson()?+"人"+"載貨:"+getCarCargo()?+"噸");
}
public?String?getCarName()?{
return?carName;
}
public?void?setCarName(String?carName)?{
this.carName?=?carName;
}
public?int?getCarId()?{
return?carId;
}
public?void?setCarId(int?carId)?{
this.carId?=?carId;
}
public?float?getPrice()?{
return?price;
}
public?void?setPrice(int?price)?{
this.price?=?price;
}
public?float?getCarCargo()?{
return?carCargo;
}
public?void?setCarCargo(int?carCargo)?{
this.carCargo?=?carCargo;
}
public?int?getCarPerson()?{
return?carPerson;
}
public?void?setCarPerson(int?carPerson)?{
this.carPerson?=?carPerson;
}
????
????
}實現
package?com.DiDiCar;
import?java.util.Scanner;
public?class?Realize?{
public?static?void?main(String[]?args)?{
//?TODO?Auto-generated?method?stub
//創建車輛對象數組,分別指向不同類型車輛
Car[]?car?={new?Automobile("奧迪A4",1,500,4),new?Automobile("馬自達6",2,400,4),new?Pickup("皮卡雪6",3,450,2,4),new?Automobile("金龍??",4,800,20),new?Truck("松花江",5,400,4),new?Truck("依維河",6,1000,20)};
Scanner?input?=?new?Scanner(System.in);
System.out.println("*******************歡迎使用滴滴租車系統:*******************");
//顯示租車信息
while?(true)
{
System.out.println("您是否要租車:1?是?0?否");
int?choise?=?input.nextInt();
if?(choise?==?0)
{
System.out.println("感謝您使用滴滴租車系統,再見!");?
break;
}
else?if?(choise?==?1)????????????????????????????????????//進入系統
{
System.out.println("您可租車的類型及其價目表:");
????????????????System.out.println("序號"?+?'\t'?+?"汽車名稱"?+?'\t'?+?"租金"?+?'\t'?+"容量");
for(int?i=0;i<car.length;i++)
{
car[i].showInfo();???????????????????????????????//顯示車的信息
}
????????break;
}
else???//輸入錯誤,從新輸入
{
System.out.println("您的輸入信息有誤,請從新輸入:");
}
}
//輸入租車數量、種類、日期
System.out.println("請輸入您要租汽車的數量:");
int?num?=?input.nextInt();?????????????????????????//租車數量
if(num>10||num<1)
{
System.out.println("超出租車數量范圍,請從新輸入:");
?num?=?input.nextInt();?
}
Car[]?carChoice?=?new?Car[num];????????//客戶選擇的車輛對象數組
for(int?i=0;i<carChoice.length;i++)
{
System.out.println("請輸入第"+(i+1)+"輛車的序號:");
int?carNum?=?input.nextInt();????????????//客戶選擇的車序號
if(carNum>6||carNum<1)
{
????????????????????System.out.println("輸入有誤,請從新輸入:");
?????????????????????carNum?=?input.nextInt();
}
carChoice[i]?=?car[carNum-1];
}
System.out.println("請輸入租車天數:");
int?Day?=?input.nextInt();????????????????????//租車天數
if(Day>30||Day<1)
{
System.out.println("輸入有誤,請從新輸入:");
?Day?=?input.nextInt();??
}
//計算并顯示賬單
int?totalCarPerson=0;????????//總的載客量
float?totalCarCargo=0;????????//總的載貨量
float?dayPrice=0;?????????????????????//每天的租金
float?totalPrice=0;?????????????????//總價
System.out.println("*******************您的賬單:*******************");
System.out.println("*******可載人車有:");
for(int?i=0;i<carChoice.length;i++)
{
if(carChoice[i]?instanceof?Automobile||carChoice[i]?instanceof?Pickup)
{
System.out.print('\t'+carChoice[i].getCarName());
totalCarPerson?+=?carChoice[i].getCarPerson();
}
dayPrice?+=?carChoice[i].getPrice();
}
System.out.println('\t'+"共載人:"+totalCarPerson+"人");
System.out.println("*******可載貨車有:");
for(int?i=0;i<carChoice.length;i++)
{
if(carChoice[i]?instanceof?Truck||carChoice[i]?instanceof?Pickup)
{
System.out.print('\t'+carChoice[i].getCarName());
totalCarCargo?+=?carChoice[i].getCarCargo();
}
}
System.out.println('\t'+"共載貨:"+totalCarCargo+"噸");
totalPrice?=?dayPrice*Day;
System.out.println("********租車總價格:"+totalPrice+"元");
input.close();
}
}
2015-12-17
get()和set()和抽象類一樣就不用重寫了