摘要: 目录解释器模式概述结构案例实现优缺点使用场景 解释器模式 概述 如上图,设计一个软件用来进行加减计算。我们第一想法就是使用工具类,提供对应的加法和减法的工具方法。 //用于两个整数相加 public static int add(int a,int b){ return a + b; } //用于两 阅读全文
posted @ 2023-11-21 15:35 RollBack2010 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 目录备忘录模式概述结构案例实现“白箱”备忘录模式“黑箱”备忘录模式优缺点使用场景 备忘录模式 概述 定义: 备忘录模式提供了一种状态恢复的实现机制,使得用户可以方便地回到一个特定的历史步骤,当新的状态无效或者存在问题时,可以使用暂时存储起来的备忘录将状态复原,很多软件都提供了撤销(Undo)操作,如 阅读全文
posted @ 2023-11-21 15:35 RollBack2010 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 目录访问者模式概述结构案例实现优缺点使用场景扩展 访问者模式 概述 定义: 封装一些作用于某种数据结构中的各元素的操作,它可以在不改变这个数据结构的前提下定义作用于这些元素的新的操作。 结构 访问者模式包含以下主要角色: 抽象访问者(Visitor)角色:定义了对每一个元素(Element)访问的行 阅读全文
posted @ 2023-11-21 15:34 RollBack2010 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 目录迭代器模式概述结构案例实现优缺点使用场景JDK源码解析 迭代器模式 概述 定义: 提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。 结构 迭代器模式主要包含以下角色: 抽象聚合(Aggregate)角色:定义存储、添加、删除聚合元素以及创建迭代器对象的接口。 具体聚合( 阅读全文
posted @ 2023-11-21 15:34 RollBack2010 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 目录中介者模式概述结构案例实现优缺点使用场景 中介者模式 概述 一般来说,同事类之间的关系是比较复杂的,多个同事类之间互相关联时,他们之间的关系会呈现为复杂的网状结构,这是一种过度耦合的架构,即不利于类的复用,也不稳定。例如在下左图中,有六个同事类对象,假如对象1发生变化,那么将会有4个对象受到影响 阅读全文
posted @ 2023-11-21 15:34 RollBack2010 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 目录观察者模式概述结构案例实现优缺点使用场景JDK中提供的实现 观察者模式 概述 定义: 又被称为发布-订阅(Publish/Subscribe)模式,它定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象。这个主题对象在状态变化时,会通知所有的观察者对象,使他们能够自动更新自己。 结 阅读全文
posted @ 2023-11-21 15:33 RollBack2010 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 目录状态模式概述结构案例实现优缺点使用场景 状态模式 概述 【例】通过按钮来控制一个电梯的状态,一个电梯有开门状态,关门状态,停止状态,运行状态。每一种状态改变,都有可能要根据其他状态来更新处理。例如,如果电梯门现在处于运行时状态,就不能进行开门操作,而如果电梯门是停止状态,就可以执行开门操作。 类 阅读全文
posted @ 2023-11-21 15:33 RollBack2010 阅读(1) 评论(0) 推荐(0) 编辑