行为型模式-概述

目录

1.概述

1.1 引入

1.2 行为型模式原理

1.3 类型

1.3.1 类行为型模式

1.3.2 对象行为型模式

 1.3.3 分析

2.行为型模式种类


1.概述

1.1 引入

        在系统运行时,对象并不是孤立的,它们可以通过相互通信与协作完成某些功能,一个对象在运行时也将影响到其他对象的运行。

1.2 行为型模式原理

        行为型模式关注系统中对象之间的交互,研究系统在运行时对象之间的相互通信与协作。

1.3 类型

       行为型模式分为类行为型模式和对象行为型模式

1.3.1 类行为型模式

       类行为型模式使用继承关系在几个类之间分配行为,主要通过多态等方式来分配父类与子类的职责。

1.3.2 对象行为型模式

      对象行为型模式则使用对象的聚合关联关系来分配行为,主要是通过对象关联等方式来分配两个或多个类的职责。

 1.3.3 分析

      根据合成复用原则,系统中尽量要使用关联关系来取代继承关系,所以大部分的行为型模式都属于对象行为型模式。

2.行为型模式种类

      在GoF设计模式中,行为型模式包括11种,如下所示:

1.职责链模式(Chain of Responsibility Pattern)

为了解除解除请求的发送者和接收者之间的耦合,从而使多个对象都

有机会处理这个请求,因此将这些对象连成一条链,并沿着这条链传递

该请求,直到有一个对象处理它。

2.命令模式(Command Pattern)

将一个请求封装成一个对象,从而可用不同的请求对客户进行参数化,

对请求排队或记录请求日志,以及支持可撤销的操作。

3.解释器模式(Interpreter Pattern)定义语言的文法,并且建立一个解释器来解释该语言中的句子
4.迭代器模式(Iteraor Pattern)

提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象

元素的内部表示。

5.中介者模式(Mediator Pattern)

用一个中介对象来封装一系列的对象交互。中介者使各个对象不需要

显示的相互引用,从而使其耦合松散,而且可以独立的改变它们之间的

交互。

6.备忘录模式(Memento Pattern)

在不破坏封装性的前提下,捕获一个对象的内部状态,并且在该对象之外

保存这个状态,这样以后就可将该对象恢复到先前保存的状态。

7.观察者模式(Observer Pattern)

定义对象之间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,

所有依赖于它的对象都得到通知并自动更新。

8.状态模式(State Pattern)

允许一个对象在其内部状态改变时改变它的行为,对象看起来似乎就修改了

它所属的类。

9.策略模式(Strategy Patterm)

定义一系列的算法,并且将它们封装起来,使得它们可相互替换,使得

子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。

10.模板方法模式(Template Method Pattern)

定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类

可以不改变一个算法的结构即可重定义该算法的某些特定步骤。

11.访问者模式(Visitor Pattern)

表示一个作用于某对象结构中的各个元素的操作,可以在不改变各个元素

的类的前提下,定义作用于这些元素的新操作。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

luckyliuqs

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值