Java--设计模式--策略模式
- 策略模式基本概念:
- 1.什么是策略模式?
- 策略: 策略这个词应该怎么理解,打个比方说,我们出门的时候会选择不同的出行方式,比如骑自行车、坐公交、坐火车、坐飞机、坐火箭等等,这些出行方式,每一种都是一个策略。
- 定义:定义一系列的算法,把每一个算法封装起来, 并且使它们可相互替换。
- 一个问题,需求就是解决它,它有多种解决方法,每个方法就是一个策略。
- 2.策略模式的作用?
- 3.为什么要使用策略模式?
- 耦合性:将出行套用在Java代码中,则是一连串的 if-else 语句,但是过于臃肿和耦合性过高。而使用策略模式则可以任意的选择一个方式,进行使用。
- 扩展性:在扩展时比较方便,如果现在新增一个新的出行方式,只需要新写一个类,然后接口继承一下就好了,可以直接投入使用,且对之前的出行方式无丝毫影响。
- 4.策略模式的优点?
- 5.策略模式的缺点?
- 使用时需要对所有的策略方法都了解,后期才能在使用的时候,根据需求选择最匹配的方法。
- 策略模式的实现:
- 环境类(Context):用来操作策略的上下文环境,也就是我们游客。
- 抽象策略类(Strategy):策略的抽象,出行方式的抽象
- 具体策略类(ConcreteStrategy):具体的策略实现,每一种出行方式的具体实现。
- 具体实现代码请点击 github.com/Mbm7280/Jav…