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

自学网站建设和seo打开百度官网

自学网站建设和seo,打开百度官网,电商个人网站建设,龙采网站建设案例目录 目标 概述 实现 目标 熟悉策略设计模式,了解策略设计模式的使用场景、具体实现。 概述 一、行为设计模式 行为设计模式是设计模式的一种类型。该类型的设计模式关注的重点在于对象的行为(通信和交互),而非对象的创建方…

目录

目标

概述

实现


目标

熟悉策略设计模式,了解策略设计模式的使用场景、具体实现。


概述

一、行为设计模式

行为设计模式是设计模式的一种类型。该类型的设计模式关注的重点在于对象的行为(通信和交互),而非对象的创建方式。较为常见的行为设计模式有:观察者模式、策略模式、命令模式、责任链模式等。优点是减少了对象之间的耦合度

二、策略设计模式

策略模式的核心思想是将算法使用分离。每一种算法单独创建一个类,算法类实现了算法接口。客户端可以自由挑选何种策略而不需要关注算法的实现,使得算法灵活替换。

优点

  • 提高了代码的扩展性和可维护性。
  • 灵活替换算法。
  • 提高代码的复用性。
  • 简化算法的维护。

缺点

  • 增加了系统的复杂度,因为每个算法都需要创建一个类去实现算法接口。
  • 使用方需要了解每一种算法的性质,因为使用方需要自己挑选算法。

四、使用场景

系统种有多个类似的算法,客户端需要根据不同的情况选择不同的算法。

五、列举责任链模式在成熟的框架中的应用

  • 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.ds6.com.cn/news/111471.html

相关文章:

  • asp.net做购物网站ip域名解析查询
  • 教你做美食的网站新平台推广赚钱
  • 做网站工作图淘宝seo是指什么
  • 中山网站制作定制百度推广代理加盟
  • 杭州营销型网站建设厦门人才网唯一官方网站
  • 邯郸房产网站广告接单平台有哪些
  • 网站导航条做多高国家职业技能培训学校
  • 营销型网站设计公司四川省人民政府
  • 深圳高端网站建设模版广告公司推广渠道
  • 织梦小说网站模板下载软文推广新闻发布
  • wordpress主题可以更改主页布局杭州seo按天计费
  • w3c网站怎么做网络做推广公司
  • 社团的工商年检网站在哪里做网络推广有前途吗
  • 织梦高端html5网站建设工作室网络公司网站模板长沙专业网络推广公司
  • 做网站许昌怎么在百度上添加自己的店铺地址
  • 专门做网站的公司微信营销平台有哪些
  • 德阳企业品牌网站建设永久免费客服系统
  • 西安优惠电商平台网站武汉百度seo排名
  • 律所网站建设方案书怎么写百度浏览器下载安装2023版本
  • 浙江省建设厅官方网站站长工具官网域名查询
  • 模具厂咋做网站怎样加入网络营销公司
  • 简历上作品展示网站链接怎么做百度sem代运营
  • 域名和网站名要一样吗关键词优化推广公司哪家好
  • 相册网站怎么做的关键词三年级
  • 广东机械加工厂百度关键词搜索引擎排名优化
  • 免费建微网站平台百度推广平台
  • 品牌网站制作网站公司昆明网络推广方式有哪些
  • 专做批发的网站电子软文文章
  • 广州制作外贸网站公司色盲测试图及答案大全
  • 太原企业网站制作高端网站建设公司排行