java设计模式 - 策略模式-爱代码爱编程
1.策略模式简介
策略模式:策略模式是一种行为型模式,它将对象和行为分开,将行为定义为 一个行为接口 和 具体行为的实现。策略模式最大的特点是行为的变化,行为之间可以相互替换。每个if判断都可以理解为就是一个策略。本模式使得算法可独立于使用它的用户而变化

策略模型结构有哪些?
Context:环境类
提供一个方法来调用抽象策略类的某个具体策略方法
Strategy: 抽象策略类
提供一个公共的策略抽象类方法,让具体策略类来实现
ConcreteStrategy: 具体策略类
实现了抽象策略定义的接口,定义具体的业务逻辑

MsgHandlerContext:环境类
获取所有处理器建立Map映射,其 key 为具体的 Topic 名称,value 为MsgHandler接口下的具体策略类
同时接口向外提供了getMsgHandler方法,根据消息类型获取处理器能力
MsgHandler接口:策略类
定义一个策略抽象方法process(),让具体策略类来实现
TaskCompletedMsgHandler或者SupplyMsgHandler:具体策略类
他们是具体的策略方法,通过重写MsgHandler接口的process(),实现业务逻辑