Java策略模式取代if else
时间:2022-04-06 08:27:12|栏目:JAVA代码|点击: 次
别再大量的if else了, 代码太简陋了, 可读性太差了.
策略模式的定义
....
简单来说 每个模块相互独立 互不影响 提高代码的可扩展性 !
举栗子, 如下烂代码
if ("花呗支付".equals(type)) {
// 花呗支付的业务逻辑处理
} else if ("微信支付".equals(type)) {
// 微信支付业务逻辑
} else if ("云闪付".equals(type)) {
// 云闪付支付业务逻辑
} else if ("...".equals(type)) {
// ....
}
思考: 可以定义一个支付接口, 支付方法, 不同的支付方式写不同的实现类, 互不干扰, 互不影响, 以后添加新的支付方式, 只需添加新的实现类实现支付接口, 重写他的支付方法即可, 无需改动之前写的代码.
正好今天敲代码的时候 使用到了该设计模式, 简单分享一下
定义接口

定义不同的实现类

每个实现类都会处理自己的业务, 互不干扰, 相互隔离, 比如 如下两个实现类 实现了相同接口处理不同的业务


定义接口

是不是比大量的if else 简洁多了~
把每个不同的模块抽取出来, 通过bean的名称获取接口的实现类, 执行方法
上一篇:带你快速搞定Mysql优化
栏 目:JAVA代码
下一篇:JAVA入门教学之快速搭建基本的springboot(从spring boot到spring cloud)
本文标题:Java策略模式取代if else
本文地址:http://www.codeinn.net/misctech/198350.html


阅读排行
- 1Java Swing组件BoxLayout布局用法示例
- 2java中-jar 与nohup的对比
- 3Java邮件发送程序(可以同时发给多个地址、可以带附件)
- 4Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常
- 5Java中自定义异常详解及实例代码
- 6深入理解Java中的克隆
- 7java读取excel文件的两种方法
- 8解析SpringSecurity+JWT认证流程实现
- 9spring boot里增加表单验证hibernate-validator并在freemarker模板里显示错误信息(推荐)
- 10深入解析java虚拟机




