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

网站建设廾金手指专业壹柒东莞市手机网站建设哪家好

网站建设廾金手指专业壹柒,东莞市手机网站建设哪家好,公司搭建网站服务,网站SEO做点提升流量象客目录 目标 概述 实现 目标 熟悉策略设计模式#xff0c;了解策略设计模式的使用场景、具体实现。 概述 一、行为设计模式 行为设计模式是设计模式的一种类型。该类型的设计模式关注的重点在于对象的行为#xff08;通信和交互#xff09;#xff0c;而非对象的创建方…目录 目标 概述 实现 目标 熟悉策略设计模式了解策略设计模式的使用场景、具体实现。 概述 一、行为设计模式 行为设计模式是设计模式的一种类型。该类型的设计模式关注的重点在于对象的行为通信和交互而非对象的创建方式。较为常见的行为设计模式有观察者模式、策略模式、命令模式、责任链模式等。优点是减少了对象之间的耦合度。 二、策略设计模式 策略模式的核心思想是将算法与使用分离。每一种算法单独创建一个类算法类实现了算法接口。客户端可以自由挑选何种策略而不需要关注算法的实现使得算法灵活替换。 优点 提高了代码的扩展性和可维护性。灵活替换算法。提高代码的复用性。简化算法的维护。 缺点 增加了系统的复杂度因为每个算法都需要创建一个类去实现算法接口。使用方需要了解每一种算法的性质因为使用方需要自己挑选算法。 四、使用场景 系统种有多个类似的算法客户端需要根据不同的情况选择不同的算法。 五、列举责任链模式在成熟的框架中的应用 Kafka消息存储策略、消息消费确认策略、消息重试策略等。Netty框架中的ChannelPipeline类和ChannelHandler接口等都使用了策略模式。MyBatis框架中的ResultSetHandler接口和StatementHandler接口等都使用了策略模式。 实现 需求 商品售卖分为普通商品、促销商品秒杀商品。不同的售卖方式有不同的折扣策略。请根据商品的售卖方式计算商品的具体售价。 商品实体类 package com.ctx.strategy;// 商品类 public class Product {private String name; // 商品名称private double price; // 商品原价private SalesStrategy salesStrategy; // 商品销售策略public Product(String name, double price, SalesStrategy salesStrategy) {this.name name;this.price price;this.salesStrategy salesStrategy;}public String getName() {return name;}// 获取商品售卖价格public double getPrice() {return salesStrategy.getPrice(price);}// 获取商品销售策略public String getSalesStrategy() {return salesStrategy.getSalesStrategy();} } 算法接口类 package com.ctx.strategy;// 销售策略接口 public interface SalesStrategy {// 获取商品售卖价格double getPrice(double price);// 获取商品销售策略String getSalesStrategy(); } 算法实现类 package com.ctx.strategy.type;import com.ctx.strategy.SalesStrategy;// 普通商品销售策略类 public class NormalSalesStrategy implements SalesStrategy {Override// 普通商品售价为原价public double getPrice(double price) {return price;}Override// 返回普通商品销售策略public String getSalesStrategy() {return 普通商品;} } package com.ctx.strategy.type;import com.ctx.strategy.SalesStrategy;// 促销商品销售策略类 public class PromotionalSalesStrategy implements SalesStrategy {Override// 促销商品售价为原价的80%public double getPrice(double price) {return price * 0.8;}Override// 返回促销商品销售策略public String getSalesStrategy() {return 促销商品;} } package com.ctx.strategy.type;import com.ctx.strategy.SalesStrategy;// 秒杀商品销售策略类 public class SeckillSalesStrategy implements SalesStrategy {Override// 秒杀商品售价为原价的50%public double getPrice(double price) {return price * 0.5;}Override// 返回秒杀商品销售策略public String getSalesStrategy() {return 秒杀商品;} } 调用类 package com.ctx.strategy;import com.ctx.strategy.type.NormalSalesStrategy; import com.ctx.strategy.type.PromotionalSalesStrategy; import com.ctx.strategy.type.SeckillSalesStrategy;public class Test {public static void main(String[] args) {// 创建普通商品原价为100元Product normalProduct new Product(普通商品, 100, new NormalSalesStrategy());System.out.println(normalProduct.getName() 售价 normalProduct.getPrice() 元销售策略 normalProduct.getSalesStrategy());// 输出普通商品 售价100.0 元销售策略普通商品// 创建促销商品原价为200元Product promotionalProduct new Product(促销商品, 200, new PromotionalSalesStrategy());System.out.println(promotionalProduct.getName() 售价 promotionalProduct.getPrice() 元销售策略 promotionalProduct.getSalesStrategy());// 输出促销商品 售价160.0 元销售策略促销商品// 创建秒杀商品原价为300元Product seckillProduct new Product(秒杀商品, 300, new SeckillSalesStrategy());System.out.println(seckillProduct.getName() 售价 seckillProduct.getPrice() 元销售策略 seckillProduct.getSalesStrategy());// 输出秒杀商品 售价150.0 元销售策略秒杀商品} }
http://www.hkea.cn/news/14323067/

相关文章:

  • 网站业务维护网站开发应看什么书籍
  • 网站界面设计的相关指南免费手机优化大师下载安装
  • 民政 门户网站 建设uc导航
  • 怎样登入网站后台好大夫王建设在线个人网站
  • 做动态效果的插件网站wordpress手机版错误
  • 商务网站创建安监局特种作业证全国联网
  • 内部建设网站需要什么条件湖南+网站建设
  • ps设计师网站有哪些网站建设的软硬件平台
  • 深圳网站ui设计抚顺网站建设服务电话
  • 营销型网站外包苏州关键词优化搜索排名
  • 固始县住房和城乡建设局网站人才市场网站源码
  • 磐安住房和城乡建设部网站杭州外贸公司名单
  • 网站轮播效果怎么做的手机网站设计的项目描述
  • 广州番禺做网站wordpress不要分页
  • 濮阳网站制作查看网站速度
  • 科技成果转化网站建设seo网站建设接单
  • 仙游住房与城乡建设局网站向百度提交网站
  • 合肥响应式网站建设方案在线做简历的网站
  • asp.net做登录注册网站房地产公司
  • 织梦网站图片怎么修改不了城市建设与管理局网站
  • 内江做网站辽宁最好的男科医院
  • 有前景的网站建设自己建设小城市网站得多少钱
  • 如何做网站关键字优化淘宝运营团队怎么找
  • 丽江网站开发厦门方易网站制作有限公司
  • 南京房产网站建设无锡企业制作网站
  • 南京专业的网站设计团队做一份完整的网站规划书
  • 网站套用WordPress 主题选项框架
  • 创业网站平台排名php发布wordpress文章
  • 最好的网站建设哪家好怎么在百度上做广告
  • 花样云做网站怎样网络平台的建设方案