标签:info 分享图片 http string dmi 技术 ceo 父类 on()
package java_car_duotai; /** * 车类,父类 * @author Administrator */ public abstract class Car { private String model;//品牌型号 private String no;//车牌号 private double price;//日租金 public Car() {} public Car(String model,String no,double price) { this.model = model; this.no = no; this.price = price; } public String getModel() { return model; } public void setModel(String model) { this.model = model; } public String getNo() { return no; } public void setNo(String no) { this.no = no; } public double getPrice() { return price; } public void setPrice(double price) { this.price = price; } public abstract double discount(int day); }
package java_car_duotai; /** * 客车类 * @author Administrator */ public class Passenger extends Car { private int seat;//几座 public Passenger() {} public Passenger(String model,String no,double price,int seat) { super(model,no,price); this.seat = seat; } public int getSeat() { return seat; } public void setSeat(int seat) { this.seat = seat; } //计算客车出折扣后的日租金 public double discount(int day) { double money = 0; if(day>=150) { money = super.getPrice()*0.6; }else if(day>=30) { money = super.getPrice()*0.7; }else if(day>=7) { money = super.getPrice()*0.8; }else if(day>=3) { money = super.getPrice()*0.9; }else { money = super.getPrice(); } return money; } }
package java_car_duotai; /** * 轿车类 * @author Administrator */ public class Saloon extends Car { private String type; public String getType() { return type; } public void setType(String type) { this.type = type; } public Saloon() {} public Saloon(String model,String no,double price,String type) { super(model,no,price); this.type = type; } //计算出轿车折扣后的日租金 public double discount(int day) { double money = 0; if(day>=150) { money = super.getPrice()*0.7; }else if(day>=30) { money = super.getPrice()*0.8; }else if(day>=7) { money = super.getPrice()*0.9; }else { money = super.getPrice(); } return money; } }
package java_car_duotai; public class ShowCar { Car sc[] = new Car[8]; public void show() { sc[0] = new Passenger("金杯","京6566754",800.,16); sc[1] = new Passenger("金杯","京9696996",1500,34); sc[2] = new Passenger("金龙","京8696997",800,16); sc[3] = new Passenger("金龙","京8696998",1500,34); sc[4] = new Saloon("宝马","京NY28588",800,"X6"); sc[5] = new Saloon("宝马","京CNY3284",600,"550i"); sc[6] = new Saloon("别克","京NT37465",300,"林萌大道"); sc[7] = new Saloon("别克","京NT96968",600,"GL8"); } public Car selCar(String medol,String type,int seat) { Car car = null; for(Car c : sc) { if(c instanceof Passenger) { Passenger p = (Passenger)c; if(p.getModel().equals(medol)&&p.getSeat()==seat) { car = p; } }else if(c instanceof Saloon) { Saloon s = (Saloon)c; if(s.getModel().equals(medol)&&s.getType().equals(type)) { car = s; } } } return car; } }
package java_car_duotai; import java.util.Scanner; //客人类,选择车类弄 public class Test { public static void main(String[] args) { Scanner cxj = new Scanner(System.in); ShowCar sc = new ShowCar(); Car cr = null; sc.show(); System.out.print("请问您需要车类(1、轿车 2、客车):"); int select = cxj.nextInt(); String medol = null; String type = null; int seat = 0; if(select==1) { System.out.print("请选择车型(1、宝马\t2、别克):"); int se = cxj.nextInt(); if(se==1) { medol = "宝马"; System.out.print("请选择型号(1、X6\t2、550i):"); int a = cxj.nextInt(); if(a==1) { type = "X6"; }else { type = "550i"; } }else { medol = "别克"; System.out.print("请选择型号(1、林萌大道\t2、GL8):"); int a = cxj.nextInt(); if(a==1) { type = "林萌大道"; }else { type = "GL8"; } } }else { System.out.print("请选择车型(1、金龙\t2、金杯):"); int se = cxj.nextInt(); if(se==1) { medol = "金龙"; System.out.print("请选择座数(1、16\t2、34):"); int a = cxj.nextInt(); if(a==1) { seat = 16; }else { seat = 34; } }else { medol = "金杯"; System.out.print("请选择座数(1、16\t2、34):"); int a = cxj.nextInt(); if(a==1) { seat = 16; }else { seat = 34; } } } cr = sc.selCar(medol, type, seat); System.out.print("请问您要租几天:"); int day = cxj.nextInt(); double sum = cr.discount(day); System.out.println("折扣后日租金是:"+sum); System.out.println("给您安排的车的车牌号是:"+cr.getNo()); System.out.println("总租金是:"+sum*day); } }
结果示例:
标签:info 分享图片 http string dmi 技术 ceo 父类 on()
原文地址:https://www.cnblogs.com/chenxj/p/10303122.html