汽车租赁系统
author:luckyboy!
version:1.1
知识储备:变量、数据类型、选择结构、循环结构、数组 、面向对象
系统概述:某汽车租赁公司出租多种轿车和客车,出租费用以日为单位计算。出租车型及信息如下表所示。
车型 | 具体信息 | 日租金 | 折扣 |
轿车 | 宝马X6(京NY28588) | 800 | days>7天9折 days>30天8折 days>150天7折 |
宝马550i(京CNY3284) | 600 | ||
别克林荫大道(京NT37465) | 300 | ||
别克GL8(京NT96968) | 600 | ||
客车 | 金杯、16座(京6566754) | 800 | days>=3天9折 days>=7天8折 days>=30天7折 days>=150天6折 |
金龙、16座(京8696997) | |||
金杯、34座(京9696996) | 1500 | ||
金龙、34座(京8696998) |
面向对象设计步骤
首先读懂项目需求,分析项目需求找出隐藏在其中的名词和动词,这些名词可能是所能用到的类和属性,动词可能是需要用到的方法。根据已知的类、属性、方法进一步优化设计,最后梳理项目运行过程。
需求中的名词
汽车租赁公司、汽车、轿车、客车、别克、宝马、金杯、金龙、X6、550i、GL8、林荫大道、座位数、日租金、折扣、车牌号(京NY28588、京CNY3284、京NT37465、京NT96968、京6566754、京6566754、京9696996、京8696998)
类和类属性
根据已知名词找出需要使用的类和类属性
汽车类:车牌号、车的品牌、日租金
客车类:车牌号、车的品牌、日租金、座位数
轿车类:车牌号、车的品牌、日租金、车的型号
汽车业务类:
汽车租赁管理类(测试类)
分析:
- 客车和轿车都属于汽车,汽车是客车和汽车的父类,汽车和客车是汽车的子类。
- 客车和汽车都具有相同的属性(车牌号、车的品牌、日租金);那么客车类和轿车类可以继承汽车类的属性。
- 除去相同的属性还具有私有的属性,客车类具有座位数,轿车类具有车的型号。
- 还应有一个汽车业务类来完成汽车租赁功能。
- 汽车租赁管理类用来对汽车租赁系统进行测试。
需求中的动词
计算租金、租赁、程序入口是类中所需大方法。
优化设计