为了方便理解,画了个UML图,可以参考一下
定义Car类型:载人+载货
public class Car {
int id;
String name;
int seat;
double load;
double price;
public Car(int id,String name,int seat,double load,double price){
this.id = id;
this.name = name;
this.seat = seat;
this.load = load;
this.price = price;
}
public String toString(){
return id+"t"+name+"t"+seat+"座t"+load+"吨t"+price+"元";
}
} 定义LoadCar继承Car,重写构造方法(载货,则座位=0)
public class LoadCar extends Car {
public LoadCar(int id,String name,double load,double price){
super(id,name,0,load,price);
}
public String toString(){
return id+"t"+name+"t"+seat+"t"+load+"t"+price;
}
} 定义SeatCar继承Car,重写构造方法(载人,则载货=0)
public class SeatCar extends Car {
public SeatCar(int id,String name,int seat,double price){
super(id,name,seat,0,price);
}
public String toString(){
return id+"t"+name+"t"+seat+"t"+load+"t"+price;
}
} 实现(主要就是业务流程):
public class Initail {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("您是否要租车?1、是;2、否");
Scanner in = new Scanner(System.in);
if(in.nextInt()==1){
Car[] cars = new Car[5];
cars[0]=new SeatCar(1,"奥迪A8",4,400);
cars[1]=new SeatCar(2,"特斯拉",4,500);
cars[2]=new Car(3,"皮卡丘",4,2,200);
cars[3]=new LoadCar(4,"松花江",10,200);
cars[4]=new LoadCar(5,"黑龙江",20,300);
System.out.println("现有5种车型可供您选择:");
System.out.println("序号"+"t"+"车型"+"t"+"座位(座)"+"t"+"载重(吨)"+"t"+"租金/天");
for(Car c : cars){
System.out.println(c);
}
int totalSeat = 0;
double totalLoad = 0;
double totalPrice = 0;
String loadCarList = "";
String seatCarList = "";
System.out.println("请输入您要租车的数量");
int rentNum = in.nextInt();
for(int i=0;i 来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2143/viewspace-2799320/ ,如需转载,请注明出处,否则将追究法律责任。