【4】策略模式

如上图所示,如果要加入一个新的货币,那么就需要对类中的Calculate函数进行修改,这违背了封闭开放原则。

上图中的方式更加合适,搞一个抽象类(方法中可以用多态调用),然后每个货币自己是一个类(拥有自己的不同实现)。在上面的这种实现中,如果新加入一个法国货币,那么只需要加一个法国货币的类,并完成自己的实现即可,不需要改变其他任何类。

相关推荐
书院门前细致的苹果1 天前
设计模式大全:单例、工厂模式、策略模式、责任链模式
设计模式·责任链模式·策略模式
「QT(C++)开发工程师」3 天前
C++ 策略模式
开发语言·c++·策略模式
佑白雪乐3 天前
<Linux基础12集>1-11集大复习Review
linux·运维·策略模式
临水逸5 天前
OpenClaw WebUI 的外网访问配置
人工智能·策略模式
她说..5 天前
策略模式+工厂模式实现订单校验功能
java·spring boot·java-ee·简单工厂模式·策略模式
短剑重铸之日5 天前
《设计模式》第五篇:策略模式
java·后端·设计模式·策略模式
帅得不敢出门5 天前
Android定位RK编译的system.img比MTK大350M的原因
android·framework·策略模式
琹箐6 天前
设计模式——策略模式
设计模式·策略模式
她说..6 天前
策略模式+工厂模式实现审批流(面试问答版)
java·后端·spring·面试·springboot·策略模式·javaee
进击的小头7 天前
设计模式组合应用:嵌入式通信协议栈
c语言·设计模式·策略模式