行为型模式(Behavioral Pattern)是对在不同的对象之间划分责任和算法的抽象化。
行为型模式不仅仅关注类和对象的结构,而且重点关注它们之间的相互作用。
1. 模板模式
意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。
主要解决:一些方法通用,却在每一个子类都重新写了这一方法。
何时使用:有一些通用的方法。
如何解决:将这些通用算法抽象出来。
关键代码:在抽象类实现,其他步骤在子类实现。
2.观察者模式 需求举例: <口技> 中猫叫 引发一些列其他动作
具体代码实现:
3. 责任链模式 为请求创建了一个接收者对象的链 ,如审批流
案例: 请假审批流程 一个请假申请 项目经理(8小时) - 主管(16小时) - 经理(32小时) – CEO(128小时)