08 2019 档案
摘要:单例模式 定义 保证一个类仅有一个实例,并提供一个访问它的全局访问点。 通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化多个对象。一个最好的办法就是,让类自身负责保存它的唯一实例。这个类可以保证没有其他实例可以创建,并且它可以提供一个访问该实例的方法。 UML图 方式一:单线程下的
阅读全文
摘要:迭代器模式 定义 提供一种方法顺序访问一个聚合对象中各个元素,而又不暴露该对象的内部表示。 什么时候用? 当你需要访问一个聚集对象,而且不管这些对象是什么都需要遍历的时候,你就应该考虑用迭代器模式 。 你需要对聚集有多种方式遍历时,可以考虑用迭代器模式。 UML图 模板代码 Aggregate It
阅读全文
摘要:组合模式 定义 将对象组合成树形结构以表示“部分 整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。 UML图 模板代码 Component Composite HRDepartment FinanceDepartment 测试 测试结果 总结 组合模式定义了包含基本对象、组合
阅读全文
摘要:举个栗子 问题描述 打游戏存进度。 简单实现 GameRole 测试 测试结果 存在问题 在客户端调用这段,把整个游戏角色的细节暴露了,职责太大,需要知道游戏角色的生命力、攻击力、防御力这些细节,还要进行备份。如果以后需要增加“魔法力”或修改现有的某种力,那这部分代码就需要修改,同样恢复时也是一样的
阅读全文
摘要:举个栗子 问题描述 不同国家的人在NBA打球,但都是用英文交流。 简单实现 Player Forwards Center Guards 测试 测试结果 存在问题 姚明刚到NBA时可能英文还不太好,也就是说听不懂教练的战术安排,attach 和 defense 不知道什么意思,因此这样实现会有问题,需
阅读全文
摘要:举个栗子 问题描述 上班的日子,上午状态好,中午想睡觉,下午渐恢复,加班苦煎熬。根据时间的不同体现不同的工作状态。 简单实现 Work / 抽象状态 Created by callmeDevil on 2019/8/3. / public abstract class State { public
阅读全文

浙公网安备 33010602011771号