design-patterns - 面向对象ATM设计的状态模式
问题描述
我已经读到 ATM 机器的面向对象设计的良好实现将使用状态模式。我不确定如何实现这一点,确切地说,客户端(驱动程序)、上下文(ATM 类)和状态类之间的关系是什么。
例如,我发现这个页面实现了 ATM 设计。
调用后 ATM 类的驱动程序代码(客户端)如何Initialize
?例如,谁和如何被read_inserted_card
调用。
接口是否将接口ATMState
的所有子类的所有方法定义为平面列表,即使某个方法仅与一个子类相关?接口中是否所有具有(空)默认实现的方法?
解决方案
推荐阅读
- infrastructure - 如何使用裸机基础架构为 Keepalived 获取虚拟 IP
- mysql - MySQL 错误代码:在 MySQL Workbench 中 CREATE TABLE 期间出现 1064
- amazon-web-services - Terraform 应用失败 - 创建指标警报失败。不支持期间 (10)
- angular - 如何在 Angular 10 单元测试中模拟子组件?
- cucumber - Cucumber - 同一场景的 UI 和 API 实现
- ruby - 修改二维数组元素
- arrays - 从输入字符串代码中反复删除和替换出现的子字符串不起作用
- python - 创建 VM 时触发 Azure 函数
- android - 过滤器 EditText 上的 Android Recyclerview 停留在同一个地方
- ajax - GravityView Ajax 链接