【设计模式系列2】如何使用策略模式替换编程中大量的if判断

设计模式系列总览

设计模式 飞机票
三大工厂模式 登机入口
策略模式 登机入口
委派模式 登机入口
模板方法模式 登机入口
观察者模式 登机入口
单例模式 登机入口
原型模式 登机入口
代理模式 登机入口
装饰者模式 登机入口
适配器模式 登机入口
建造者模式 登机入口
责任链模式 登机入口
享元模式 登机入口
组合模式 登机入口
门面模式 登机入口
桥接模式 登机入口
中介者模式 登机入口
迭代器模式 登机入口
状态模式 登机入口
解释器模式 登机入口
备忘录模式 登机入口
命令模式 登机入口
访问者模式 登机入口
软件设计7大原则和设计模式总结 登机入口

什么是策略模式

策略模式(Strategy Pattern)属于GoF23种设计模式之一,策略模式是指定义了不同的算法逻辑,并将其封装起来,让它们之间可以互相替换,此模式可以让算法逻辑发生变化时不会影响到使用算法逻辑的用户。策略模式可以用于改造代码中的if…else逻辑

策略模式使用场景

同一个系统中存在不同的逻辑算法,而彼此之间在不同场景中需要实现动态替换,如:支付方式,可以选择:支付宝,微信,银联等,彼此之间就可以相互替换,再如商场打折促销活动,有双11活动,双12活动,彼此之间可以相互替换

策略模式示例

首先策略模式必须有一个策略接口,然后根据不同业务逻辑新建不同的实现类完成具体逻辑。
接下来笔者就以支付为例来实现一个策略模式的例子,如下定义了一个顶级策略接口。

1、创建一个策略接口

import java.math.BigDecimal;
public interface PayStrategry {
   

    boolean pay(
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

双子孤狼

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

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

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

打赏作者

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

抵扣说明:

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

余额充值