当前位置: 首页 > news >正文

网站建设刂搜金手指下拉二四毅冰做外贸是哪个网站

网站建设刂搜金手指下拉二四,毅冰做外贸是哪个网站,国内外优秀网站设计,做网站书籍策略模式 参考#xff1a; CSDN | 策略模式百家号 | 策略模式 如果某个系统需要不同的算法#xff08;如超市收银的优惠算法#xff09;#xff0c;那么可以把这些算法独立出来#xff0c;使之之间可以相互替换#xff0c;这种模式叫做策略模式#xff0c;它同样具有三个…策略模式 参考 CSDN | 策略模式百家号 | 策略模式 如果某个系统需要不同的算法如超市收银的优惠算法那么可以把这些算法独立出来使之之间可以相互替换这种模式叫做策略模式它同样具有三个角色 环境角色使用策略的类抽象策略角色策略共有的抽象类或接口具体策略角色具体的策略的实现 策略模式的优缺点 优点 需要新的算法时只需要拓展策略而不需要修改原有代码符合开闭原则。避免出现过多判断分支提高代码可读性。算法间可方便的进行继承替换。 缺点 客户端必须熟悉所有算法并自行决定使用哪个策略策略模式将造成产生很多策略类可以通过使用享元模式在一定程度上减少对象的数量。 适用场景 一个系统中有很多类这些类之间只有行为表现不同时可以使用策略模式策略模式在实例化策略时可以配合使用简单工厂。 例 比如一个收银系统结算时有不同的优惠策略如 九折 五折满100减10等这些不同的优惠策略便是”具体策略角色“而收银系统就是 ”环境角色“还需要定义一个 ”抽象策略角色“ package pers.junebao.strategy_mode.discount;// 抽象策略角色 public interface BaseDiscountStrategy {double preferentialAlgorithm(double money); } package pers.junebao.strategy_mode.discount;// 折扣优惠(具体策略角色) public class Discount implements BaseDiscountStrategy {private double discount;public Discount(double discount) {// Discount(double discount) {if(discount 1)discount 1;else if(discount 0)discount 0.1;this.discount discount;}Overridepublic double preferentialAlgorithm(double money) {return money * this.discount;} } package pers.junebao.strategy_mode.discount;// 满减优惠(具体策略角色) public class FullReduction implements BaseDiscountStrategy {private double discountPrice; //优惠金额private double baseline; // 满减条件FullReduction(double baseline, double price) {this.baseline baseline;this.discountPrice price;}Overridepublic double preferentialAlgorithm(double money) {if(money this.baseline)money - this.discountPrice;return money;} } 这样环境角色就可以自己决定使用哪种策略而不用修改代码了 package pers.junebao.strategy_mode;import pers.junebao.strategy_mode.discount.BaseDiscountStrategy; import pers.junebao.strategy_mode.discount.Discount;public class CashRegisterSystem {public static void main(String[] args) {BaseDiscountStrategy ds new Discount(0.9);double purchasingPrice 1500;double amountsPayable ds.preferentialAlgorithm(purchasingPrice);System.out.println(amountsPayable);} }对于这些具体策略可以使用简单工厂进一步屏蔽策略的具体细节 package pers.junebao.strategy_mode.discount;public class StrategyFactory {public static BaseDiscountStrategy getDiscountStrategy(String name) {BaseDiscountStrategy result null;switch (name){case 九折:{result new Discount(0.9);break;}case 五折: {result new Discount(0.5);break;}case 满100减10: {result new FullReduction(100, 10);break;}case 满1000减200: {result new FullReduction(1000, 200);break;}default:result new OriginalPrice();}return result;} } BaseDiscountStrategy ds StrategyFactory.getDiscountStrategy(满1000减200);GitHub | 完整代码
http://www.pierceye.com/news/133128/

相关文章:

  • 网站开发都用phpwordpress文章内图片幻灯片
  • 岳阳网站建设企业绿色大气漂亮dedecms茶叶企业网站
  • 网站建设使用虚拟主机的优点与缺点做百科网站
  • 网站被墙是谁做的电影网站模板
  • 合肥建设网官方网站网页设计网站制作公司
  • 外贸网站建设评价网站的营销方案
  • 邯郸专业做wap网站中国设计网址导航
  • 邯郸移动网站建设价格官方网站车联网是谁做
  • 哪个网站可以做高像素动图个人网站排版设计
  • 多少网站域名采用中文做一个电子商务网站在哪里做
  • 家装设计学校沈阳网站建设优化企业
  • 网站开发公司售后服务触屏端网站开发
  • 建设银行网站注销吗网页制作作品
  • 家具网站建设目的及功能定位网页游戏在哪里制作
  • 高端网站开发步骤网站设计制作如何评价
  • 漳州企业网站建设制作做发型的网站
  • 承包酒席可以做网站吗网站建设小组的运营模式
  • 保定网站建设公司哪家好酒店网站建设必要性
  • 电子商务网站建设设计报告建网站免费软件
  • 广州高端优秀网站改版设计公司网页编辑框
  • 摄影网站的需求分析wordpress英文版变成中文版
  • 网站营销公司wordpress 无效的文章类型
  • 网站一级页面标题怎么做茶网站设计素材下载
  • 网站建设费用计入什么科目淘宝网站开发店铺什么类别
  • 四川平昌县建设局网站怎么把网站维护
  • 成都教育行业网站建设工业和信息化部反诈中心发短信
  • 高端开发网站系统网页设计与制作教程课后题答案
  • 网站制作的困难与解决方案无极在线最新招聘
  • 做设计比较好的网站推荐郑州做网站企起
  • 手机版自适应网站怎么做春节网页设计素材网站