设计模式
谢阿期
这个作者很懒,什么都没留下…
展开
-
设计模式之命令模式+实例
定义命令模式是一种对象行为型模式,命令模式将一个请求封装成一个对象,从而使我们可以用不同的请求对客户进行参数化,使发送者和接收者完全解耦。发送者和接收者之间没有直接引用关系,发送请求的对象只需知道如何发送请求,而不必知道如何执行。角色Command:抽象命令类 ConcreteCommand:具体命令类Invoker:调用者(命令发出者)Receiver:接收者(执行者)Clie...原创 2020-03-25 09:24:13 · 510 阅读 · 0 评论 -
设计模式之职责链模式+实例
定义及使用场景职责链模式避免请求发送者和接收者耦合在一起,让多个对象都有可能接受请求。并将这些对象连接成一条链,并且沿着这条链传递请求,知道有对象处理它为止,有时也成为责任链。职责链上的每一个对象都是请求处理者。职责链将请求的发送者和接收者解耦。实例:以下是用职责链模拟水果加工工厂分拣处理水果实例:package com.chain;import java.util.ArrayLi...原创 2020-03-24 20:36:15 · 805 阅读 · 0 评论 -
设计模式之观察者模式(Observer)+实例
定义多个对象之前存在一对多的依赖关系,当一个对象的状态发生了改变时,所有依赖于它的对象都得到通知并自动更新,又称为发布——订阅模式优点:降低目标与观察者间的耦合关系,在目标和观察者模式之间建立了一套触发机制缺点:目标和观察者之间的依赖关系并未完全解除,而且可能循环使用,当观察者对象很多时,通知的发布会花费很多时间。实例下面是用观察者模式模拟股票两个不同持有者(抛售方,购买方)关注角度...原创 2020-03-24 20:01:24 · 282 阅读 · 0 评论 -
设计模式之状态模式(State)+线程状态转换实例
定义:状态模式是一种对象行为型模式,是指将有状态的对象,把复杂的“判断逻辑”提取到不同的状态对象中,允许状态对象在其内部状态发生改变时改变行为。思想:当控制一个对象状态转换的表达式过于复杂时,将相关“判断逻辑”提取出来,放到一系列的状态类中,这样可以把原来复杂的逻辑判断简单化缺点:在原有的基础上增加了系统的类和对象。结构和实现较为复杂。以线程的生命周期为例。代码:package ...原创 2020-03-16 20:52:14 · 445 阅读 · 0 评论