Java程序设计——综合作业
Java Programming, CY
GateMachine的进阶改造—TicketMachine
本次作业总览
?将课堂上和第三周作业中涉及到的GateMachine(售票闸机模拟)示例进行进一步的改造和优化,实现一个简易的售票机模拟
?核心要求:将信息展示输出和业务处理运算两大功能模块分离到两种不同的类中,然后通过第三个类来完成功能流程的调度。最后,通过一个“测试类”实际地运行
Java Programming, CY
详细指引
?编写代表显示器的Display类,在类中实现欢迎信息(welcome)、余额展示(showBalance)、购票成功信息(posMsg)、购票失败信息(negMsg)等方法
?避免使用Display类进行运算和数据存储?按需设计必要的构造函数
?可在基本功能的基础上,添加其他方法,完善该类以及其他相关类的功能
Java Programming, CY
详细指引
?编写代表业务处理器的Processor类用于实现和处理基于刷卡的业务,在该类中实现余额读入(readBalance),设置价格(setPrice),支付扣款(makePayment),余额充足性判定(isSufficient)、余额清零(cleanBalance)等方法
????
避免使用Processor类进行信息展示注意设置必要的成员变量按需设计构造函数
可在基本功能的基础上,添加其他方法
Java Programming, CY
详细指引
?创造一个Processor类的子类,命名为CashProcessor,用于实现和处理基于投币的业务。
?可考虑覆盖重写readBalance方法或makePayment方法,使得用户投币额度不足以支付票价时,可以继续投币增加余额?按需设计必要的构造函数
?可在基本功能的基础上,添加或重写其他方法和成员变量
?也可以编写一个抽象父类,再设计用于读卡和投币的两种不同子类。但本作业对抽象和接口均不做要求。
Java Programming, CY