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

城市建设服务中心网站如何注册公司网站域名

城市建设服务中心网站,如何注册公司网站域名,中国建筑装饰装修官网,网站建设服务费合同模板策略模式#xff08;Strategy Pattern#xff09;是一种行为型设计模式#xff0c;它定义了一系列算法#xff0c;并将每一个算法封装起来#xff0c;使它们可以相互替换。策略模式让算法独立于使用它的客户端代码#xff0c;使得算法的变化不会影响到使用该算法的客户端…策略模式Strategy Pattern是一种行为型设计模式它定义了一系列算法并将每一个算法封装起来使它们可以相互替换。策略模式让算法独立于使用它的客户端代码使得算法的变化不会影响到使用该算法的客户端。 原理 策略接口Strategy Interface: 定义了所有支持的算法的公共操作。具体策略类Concrete Strategies: 实现了策略接口每个类代表一个具体的算法或行为。上下文Context: 拥有一个对策略对象的引用负责调用策略对象的执行方法并在需要时切换策略。 Java代码示例 // 策略接口 public interface PaymentStrategy {void pay(double amount); }// 具体策略类信用卡支付策略 public class CreditCardStrategy implements PaymentStrategy {Overridepublic void pay(double amount) {System.out.println(Paid amount using credit card.);// 实际支付逻辑...} }// 具体策略类支付宝支付策略 public class AlipayStrategy implements PaymentStrategy {Overridepublic void pay(double amount) {System.out.println(Paid amount using Alipay.);// 实际支付逻辑...} }// 上下文购物车 public class ShoppingCart {private ListItem items;private PaymentStrategy paymentStrategy;public void setPaymentStrategy(PaymentStrategy strategy) {this.paymentStrategy strategy;}public void checkout() {double total calculateTotal();paymentStrategy.pay(total);}// 其他购物车相关的方法... }// 客户端使用示例 public class Client {public static void main(String[] args) {ShoppingCart cart new ShoppingCart();// 设置支付策略为信用卡支付cart.setPaymentStrategy(new CreditCardStrategy());cart.checkout(); // 输出Paid ... using credit card.// 改变支付策略为支付宝支付cart.setPaymentStrategy(new AlipayStrategy());cart.checkout(); // 输出Paid ... using Alipay.} }设想你经营一家餐厅顾客可以选择不同的支付方式进行结账比如现金、刷卡或手机支付。每种支付方式就是一个策略当顾客选择某种支付方式时服务员就执行相应的“策略”即进行相应的支付处理。策略模式在这里的作用就是让服务员上下文可以根据客户要求灵活地调用不同支付方式策略的结账流程而无需知道每种支付方式的具体实现细节。 应用 支付系统不同的支付方式如信用卡、支付宝、微信支付等可以用不同的策略来实现用户选择不同的支付方式时系统只需调用对应的策略即可完成支付操作。游戏AI根据不同的场景和敌人类型游戏角色可能有不同的战斗策略每种策略都由一个具体策略类表示。排序算法对于排序功能可以创建多个实现不同排序算法如冒泡排序、快速排序、归并排序的具体策略类根据需求动态切换排序策略。 适用性 算法的多样化选择当系统需要在多种算法之间进行切换时例如排序算法、搜索算法、加密算法等每种算法都可以封装成一个具体策略类。行为的动态变化根据不同的运行环境或条件对象的行为可以动态改变。例如游戏中的角色可能有不同的战斗策略可以根据敌人类型或场景变化来实时切换。业务规则可配置在业务逻辑中如果存在多种规则或策略且这些规则可能会频繁变更或扩展通过策略模式可以让用户自行配置使用哪种规则从而提高系统的灵活性和可扩展性。避免多重条件判断在代码中有大量if-else或者switch-case语句用于选择不同行为时可以考虑使用策略模式将每种行为封装为一个策略类减少代码耦合度并增强可读性。遵循开闭原则新的策略可以通过增加新的策略类轻松添加到系统中而无需修改现有代码这符合面向对象设计原则中的“对扩展开放对修改关闭”。
http://www.hkea.cn/news/14520451/

相关文章:

  • 做网站英文怎么说低价网站建设资讯
  • 深圳网站开发培训wordpress 文章 函数
  • psd 网站请将网站首页底部的备案号
  • 2003 iis网站发布网站哪个品牌网站设计感强
  • 自由策划企业网站管理系统破解版伊宁网站建设优化
  • 个人 备案 多个网站免费ddns域名注册
  • 上海企业网站改版一重大连工程建设有限公司官方网站
  • 潍坊 营销型网站建设老域名查询
  • 凡科网做的网站保存后就上传了吗一站式发稿平台
  • 团购网站开发的可行性分析宿迁做网站哪家公司好
  • 购物型网站怎么建立网站开发用什么框架好
  • 网站怎么做拉新网站建设公司开发企业北京网站
  • 如何建立一个网站论坛杭州企业网站制作公司
  • 怎样做电商网站网站内部链接怎么做
  • 深圳装修网站建设工业设计效果图
  • .简述网站开发的流程网站建设内容录入论文
  • 佛山网站快速优化排名短代码 wordpress
  • 视频网站 怎么做做电商网站必需知道qc
  • 东莞seo建站优化哪里好seo是指
  • 二手网站建设情况机关网站建设
  • 网站演示程序网络营销运营方案
  • 专注于网站营销服务wordpress搜索结果
  • 网站开发培训视频广州做网站建设哪家专业
  • 网站建设的收费标准wordpress 显示置顶文章
  • node框架做网站互联网网页设计流程
  • 建设厅网站生成案卷生成不了本地app制作公司地址
  • 中国正规官方网站有哪些长沙企业网站开发哪家专业
  • 响应式网站制设计网站制作多少钱方案
  • 怎样做网站的用户分析如何建立一个小程序的网站
  • 南宁物流公司网站建设网站建设新闻