首页 > 编程知识 正文

怎么用java做一个系统,共享汽车租赁系统

时间:2023-05-04 14:42:31 阅读:175404 作者:1196

面向对象编程的汽车租赁系统

package com.my.rentalcar;

//汽车类(亲戚) )。

公共类自动{

//车牌日租金private String aNum; 私有字符串; 私有返回; //生成方法:生成子类对象时,从super获取公共自动({ }公共自动) stringanum、String brand、int rent ) { this.anum this.brand=brand; this.rent=rent; }public String getaNum () {return aNum; }publicvoidsetanum(stringanum ) {this.aNum=aNum; }public String getBrand () {return brand; } publicvoidsetbrand (string brand ) {this.brand=brand; }公共获取() {return rent; }publicvoidsetrent(intrent ) {this.rent=rent; //定义抽象方法并计算租金publicabstractfloattotalprice (intdays ); }

package com.my.rentalcar;

//汽车业务类

公共类自动业务{

publicfinalstaticautomobile [ ] automobiles=new automobile [8]; //汽车//public void init () static )//初始化多态性,父类引用为子类对象automobiles(0)=newcar,'京NY28588 ',' BMW ',父类引用Automobiles[1]=new Car (北京CNY3284、宝马、600、550i ); Automobiles[2]=new Car ('京NT37465 ','别克',300,'林荫大道'); Automobiles[3]=new Car ('京NT96968 ','别克',600,' GL8 ' ); Automobiles[4]=new Bus ('京6566754 ','金杯',800,16 ); Automobiles[5]=new Bus ('京9696996 ','金杯',1500,34 ); Automobiles[6]=new Bus ('京8696997 ','金龙',800,16 ); Automobiles[7]=new Bus ('京8696998 ','金龙',1500,34 ); //租车方法publicautomobilerentalautomobile (string brand,int seatnum,String type ) {Automobile a=null; //基于用户输入的信息,遍历数组,对应的汽车返回给用户的自动附件(for ) 下变频)强烈改变automobile轿车品牌和型号与用户期望的匹配if(car.getbrand ).equals(brand ) car.gettype.equals 黑; (else )//向下转换:强烈地将automobile转换为busbus=(bus ) automobile; //客车品牌和型号按用户要求的if(bus.getbrand(.equals ) brand (bus.getseatnum ) )==seatnum ) {a=bus; 黑; }}}return a; }

package com.my.rentalcar;

//轿车类(子类) )

publicclassbusextendsautomobile {

//公共汽车座位数private int seatnum; public bus ({ } public bus (stringa num,String brand,int rent,int seatnum ) { super } anum,brand,rent; //调用父类的带参数的结构方法this.seat num=seat num } public int getseatnum () {return seatnum; } publicvoidsetseatnum (intseatnum ) {this.seatnum=seatnum; //重写父级计算租金的抽象方法,客车车型折扣超出总额publicfloattotalprice(intdays )//折扣范围时价格=日租金*天数float price=this.getRent /

/在折扣范围内时if(days>=3 && days<7) {price = price * 0.9f;}else if(days>=7 && days<30) {price = price * 0.8f;}else if(days>=30 && days<150) {price = price * 0.7f;}else if(days>=150) {price = price * 0.6f;}return price;}

}

package com.my.rentalcar;

//轿车类(子类)
public class Car extends Automobile{

//轿车型号private String type;public Car() {}public Car(String aNum, String brand, int rent,String type) {super(aNum, brand, rent); //调用父类带参构造方法this.type = type;}public String getType() {return type;}public void setType(String type) {this.type = type;}//重写父类计算租金抽象方法,由轿车车型的折扣来计算总价public float totalPrice(int days) {//不在折扣范围内时的价格 = 日租金 * 天数 float price = this.getRent() * days;//在折扣范围内时if(days>7 && days<=30) {price = price * 0.9f;}else if(days>30 && days<=150) {price = price * 0.8f;}else if(days>150) {price = price * 0.7f;}return price;}

}

package com.my.rentalcar;

import java.util.Scanner;

//汽车租赁管理类
public class RentalAutomobile {
public static void main(String[] args) {
//System.out.println(AutomobileBusiness.Automobiles[0].getClass());
Scanner input = new Scanner(System.in);
AutomobileBusiness Auto = new AutomobileBusiness();
System.out.println(“欢迎光临利民汽车租赁公司”);
System.out.print(“请选择您要租赁的车型(1、轿车 2、客车):”);
int AutoType = 0;
do{
if(input.hasNextInt())
{
AutoType = input.nextInt();
break;
}
else{
input.next();
System.out.print(“输入有误,请重新输入:”);
}
}while(true);
//获得用户输入的条件
String brand = “”;
int seatnum = 0;
String type = “”;

switch(AutoType) {case 1://租轿车System.out.print("请选择您要租赁汽车的品牌(1、宝马 2、别克):");int choose = 0;do{if(input.hasNextInt()){choose = input.nextInt();break;}else{input.next();System.out.print("输入有误,请重新输入:");}}while(true);if(choose == 1) {brand = "宝马";System.out.print("请选择您要租赁的汽车型号(1、X6 2、550i):");int x = 0;do{if(input.hasNextInt()){x = input.nextInt();break;}else{input.next();System.out.print("输入有误,请重新输入:");}}while(true);type = (x == 1)?"X6":"550i";}else {brand = "别克";System.out.print("请选择您要租赁的汽车型号(1、林荫大道 2、GL8):");int y = 0;do{if(input.hasNextInt()){y = input.nextInt();break;}else{input.next();System.out.print("输入有误,请重新输入:");}}while(true);type = (y == 1)?"林荫大道":"GL8";}break;case 2://租客车System.out.print("请选择您要租赁汽车的品牌(1、金杯 2、金龙):");int z = 0;do{if(input.hasNextInt()){z = input.nextInt();break;}else{input.next();System.out.print("输入有误,请重新输入:");}}while(true);brand = (z == 1)?"金杯":"金龙";System.out.print("请选择汽车座位数(1、16座 2、34座):");int q = 0;do{if(input.hasNextInt()){q = input.nextInt();break;}else{input.next();System.out.print("输入有误,请重新输入:");}}while(true);seatnum = (q == 1)?16:34;break;}//初始化汽车信息//Auto.init();Automobile a = Auto.rentalAutomobile(brand, seatnum, type);System.out.print("请输入您要租赁的天数:");int days = 0;do{if(input.hasNextInt()){days = input.nextInt();break;}else{input.next();System.out.print("输入有误,请重新输入:");}}while(true);float rent = a.totalPrice(days);System.out.println("您租赁的汽车车牌号为:" + a.getaNum());System.out.println("租金总计为:" + rent + "元"); input.close();}

}

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。