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

大连做网站 选领超科技谷歌优化排名公司

大连做网站 选领超科技,谷歌优化排名公司,WordPress搜索引擎链接提交,网站建设难做吗FullDiscount Strategy,策略模式:定义一系列的算法,把他们一个个封装起来, 并使他们可以互相替换,本模式使得算法可以独立于使用它们的客户。 场景:购物车结算时,根据不同的客户,…

FullDiscount 

Strategy,策略模式:定义一系列的算法,把他们一个个封装起来,
并使他们可以互相替换,本模式使得算法可以独立于使用它们的客户。

场景:购物车结算时,根据不同的客户,计算不同的折扣策略,先定义个折扣策略基类Discount,各种不同的折扣定义子类来继承。根据实际的情况,再将折扣策略传给购物车对象进行订单的结算。

类图:

PatterTest类调用购物车ShoppingCart测试,ShoppingCart传入Discount来计算折扣。

Discount.java基类

package com.figo.study2024.pattern.strategy;/*** 计算折扣接口*/
public interface Discount {public int calculate(int money);
}
package com.figo.study2024.pattern.strategy;/*** 满减*/
public class FullDiscount implements Discount {@Overridepublic int calculate(int money) {if (money > 200){System.out.println("优惠减免20元");return money - 20;}return money;}
}
package com.figo.study2024.pattern.strategy;/*** 首次购*/
public class NewerDiscount implements Discount {@Overridepublic int calculate(int money) {if (money > 100){return money - 20;}return money;}
}
package com.figo.study2024.pattern.strategy;
/*** 测试策略模式* 购物车费用结算过程*/
public abstract class ShoppingCart {private Discount discount;public void setDiscount(Discount discount) {this.discount = discount;}//提交订单主流程public void submitOrder(){//计算商品金额int money = balance();System.out.println("商品总金额为:"+money+"元");//优惠减免money = discount.calculate(money);System.out.println("优惠减免后:"+ money+"元,");//保存及支付订单pay(money);//送货上门sendHome();}//计算金额private int balance(){int money = 280;//TODO 累加商品金额return money;}private void sendHome(){System.out.println("满39,免费送货上门");}//提交支付protected abstract void pay(int money);}

策略模式测试:

package com.figo.study2024.pattern.strategy;import com.figo.study2024.pattern.template.MilkTea;
import com.figo.study2024.pattern.template.PearlMilkTea;
import com.figo.study2024.pattern.template.RedBeanMilkTea;/*** @ClassName:PatterTest* @PackageName:com.figo.study2024.pattern.template* @Description:客户端调用类描述* @Date:2024/2/20 12:53* @Author:figo*/
public class PatterTest {public static void main(String[] args) {/*** 购物车这里可以使用模板方法设计模式,继承ShoppingCart* ,重写pay方法即可,这里演示策略模式就不另外写了*/ShoppingCart cart=new ShoppingCart() {@Overrideprotected void pay(int money) {System.out.println("使用云闪付支付");}};//新用户,可以查询用户是否有购买记录,没有的话使用新用户折扣策略cart.setDiscount(new NewerDiscount());//满减,有购买记录,检查是否符合满减策略
//        cart.setDiscount(new FullDiscount());cart.submitOrder();}
}

http://www.tj-hxxt.cn/news/104069.html

相关文章:

  • 亚马逊雨林生物seo搜索优化培训
  • 网站在线客服软件百度网站排名seo
  • 算卦网站哪里可以做宁波seo在线优化方案公司
  • 北京比较好的网站建设公司河南网站建设优化技术
  • 做网站的网页用什么软件好关键词seo排名优化推荐
  • 先做网站再备案吗网上教育培训机构哪家好
  • 哪个浏览器不限制访问任何网站的百度风云榜官网
  • wordpress 调用参数宁波seo关键词如何优化
  • app和网站开发区别北京seo全网营销
  • 餐厅装修设计公司网站西安百度推广联系方式
  • 濮阳武志勇长沙网站seo优化排名
  • 个人网站是啥满足seo需求的网站
  • 学院网站建设方案seo商学院
  • wordpress前台插件北京seo公司公司
  • 西安哪家网站做的好新浪博客seo
  • 做cpa的电影网站模板全国推广优化网站
  • 长沙做网站公司有哪些吉林seo推广
  • 网站建设7个主要流程图推广产品的软文
  • 营销型网站开发流程包括百度大搜推广开户
  • 网站banner 制作技巧it培训
  • 如何做网站报价和生活爱辽宁免费下载安装
  • 网站网页不对称自动交换友情链接
  • wordpress插件怎么用珠海百度搜索排名优化
  • 做衣服视频有些什么网站吉安seo网站快速排名
  • 网页自动跳转上海网站seo诊断
  • 预付网站制作费怎么做凭证热门搜索
  • wap网站 手机网站江苏泰州seo网络优化推广
  • 淘宝上开做网站的店铺推广方案怎么做
  • 1网站建设优化落实防控措施
  • 做h5页面网站有哪些作品提示优化要删吗