Java 策略模式应用

聚合支付应用 (替换多个if这种模式,复用性和维护性更强,只需要关注初始化的对象即可)
编写的简单逻辑思路 具体的类

定义接口与实现

定义枚举 相当于map key:支付方式 value:具体的实现策略

定义工厂 获取具体的实现类:

具体策略类调用(标准应该是接口和单例模式应用防止并发时候出现的问题)

聚合支付应用 mapper(getbean(code))
数据库建立表 存放策略对象(key:value)替换枚举
 * 1.查询数据库 找到bean对象id
 * 2.通过springUtils applicationcontext上下文对象获取spring容器初始化bean
 * 3.通过bean对象 找到对应的方法 

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Java策略模式是一种行为型设计模式,它允许在运行时根据不同的算法或策略来改变对象的行为。这种模式可以将算法的实现与调用代码分离,使得它们可以独立地变化。 下面是一个简单的Java策略模式应用实例: 首先,我们定义一个策略接口(Strategy),它包含一个执行算法的方法: ```java public interface Strategy { void execute(); } ``` 然后,我们实现两个具体的策略类(ConcreteStrategyA和ConcreteStrategyB),它们分别实现了策略接口的execute方法: ```java public class ConcreteStrategyA implements Strategy { @Override public void execute() { System.out.println("执行策略A"); } } public class ConcreteStrategyB implements Strategy { @Override public void execute() { System.out.println("执行策略B"); } } ``` 接下来,我们定义一个上下文类(Context),它包含一个策略对象,并提供一个执行策略的方法: ```java public class Context { private Strategy strategy; public void setStrategy(Strategy strategy) { this.strategy = strategy; } public void executeStrategy() { strategy.execute(); } } ``` 最后,我们可以通过以下方式使用策略模式: ```java public class Main { public static void main(String[] args) { Strategy strategyA = new ConcreteStrategyA(); Strategy strategyB = new ConcreteStrategyB(); Context context = new Context(); context.setStrategy(strategyA); context.executeStrategy(); context.setStrategy(strategyB); context.executeStrategy(); } } ``` 在上述示例,我们通过策略模式将不同的算法封装在具体的策略类,并通过上下文类来切换和执行不同的策略。这样,我们可以方便地扩展和替换策略,而无需修改客户端代码。 希望这个实例能帮助你更好地理解Java策略模式

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值