代码和任务
1、汽车租赁系统
需求说明:某汽车租赁公司出租多种轿车和客车,出租费用以日为单位计算。出租车型及信息如下表所示。
从上表可以分析出该项目的类和类的属性,以及类的方法:
(1)轿车和客车是两个常用的类,汽车可以作为两者的父类设计,也就是汽车类;
(2)别克、宝马、金杯、金龙是汽车的品牌,作为汽车类的属性品牌;
(3)X6、550i、GL8、林荫大道是轿车的型号,可以作为轿车类的属性型号的值;
(4)京NY28588、京CNY3284、京6566754等是汽车的车牌号,可以作为汽车类的属性车牌号的值;
(5)16座、34座可作为客车的属性座位数的值;
(6)日租金可以作为汽车对象的属性;
(7)汽车有租赁业务,所以要有汽车业务类,主要负责公司汽的租赁;
(8)最后要有个汽车租赁管理类,程序的入口;
(9)每种类型汽车的计算租金的折扣是不同的,所以将计算租金这个方法设计为父类的方法,取名为calRent(int days),子类轿车和客车根据租赁的天数计算打折的标准不同,分别重写父类的方法;
(10)在租赁汽车时,轿车的日租金和品牌、型号有关,需要客户提供所需租赁汽车的品牌和型号;客车的日租金和座位数有关,需要客户提供所需租赁汽车的品牌和座位数;
(11)客户在租赁时,系统根据客户的选择类型来决定是租赁轿车还是客车,属于租赁的业务,所以将租赁方法设计为汽车业务类的方法此方法会得到一个具体的汽车;
(12)汽车租赁管理类设计一个程序入口的方法,用来显示用户界面以及信息输出;
编写程序实现汽车租赁业务,效果如下图所示。
2、新增卡车车型
需求说明:新增“卡车”车型。新购置了卡车,根据吨位,租金每吨每天50元,在作业1的基础上对系统进行扩展,计算汽车租赁的总租金,实现效果如下图所示。
<span style="font-size:18px;">public class Bus extends Cars {
private int seatNum;
public int getSeatNum() {
return this.seatNum;
}
public void setSeatNum(int seatNum) {
this.seatNum = seatNum;
}
//构造方法
public B