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

做网站的广告词网络建站如何建成

做网站的广告词,网络建站如何建成,成都美食网站设计论文,延长中路上海网站建设请直接看原文:设计模式#xff08;十一#xff09;策略模式_某移动支付系统在实现账户资金转入和转出时需要进行身份验证,该系统为用户提供了-CSDN博客 ----------------------------------------------------------------------------------------------------------------…请直接看原文:设计模式十一策略模式_某移动支付系统在实现账户资金转入和转出时需要进行身份验证,该系统为用户提供了-CSDN博客 --------------------------------------------------------------------------------------------------------------------------------  前言 当我们写代码时总会遇到一种情况就是我们会有很多的选择由此衍生出很多的if…else或者case。如果每个条件语句中包含了一个简单的逻辑那还比较容易处理如果在一个条件语句中又包含了多个条件语句就会使得代码变得臃肿维护的成本也会加大这显然违背了开放封闭原则。这一讲我们就来讲策略模式来看看它是怎么解决如上所说的问题的。 1.策略模式简介 策略模式定义 定义一系列的算法把每一个算法封装起来, 并且使它们可相互替换。策略模式模式使得算法可独立于使用它的客户而独立变化。 策略模式UML图 Context用来操作策略的上下文环境。Stragety策略的抽象。ConcreteStragetyA、ConcreteStragetyB具体的策略实现。 2.策略模式简单实现 这回我们还举武侠的例子张无忌作为一个大侠会遇到很多的对手如果每遇到一个对手都用自己最厉害的武功去应战这显然是不明智的于是张无忌想出了三种应战的策略分别对付三个实力层次的对手。 定义策略接口 策略接口有一个fighting的方法用于战斗 public interface FightingStrategy {public void fighting(); } 具体策略实现 分别定义三个策略来实现策略接口用来对付三个实力层次的对手 public class WeakRivalStrategy implements FightingStrategy {Overridepublic void fighting() {System.out.println(遇到了较弱的对手张无忌使用太极剑);} } public class CommonRivalStrategy implements FightingStrategy {Overridepublic void fighting() {System.out.println(遇到了普通的对手张无忌使用圣火令神功);} } public class StrongRivalStrategy implements FightingStrategy {Overridepublic void fighting() {System.out.println(遇到了强大的对手张无忌使用乾坤大挪移);} } 实现环境类 环境类的构造函数包含了策略类通过传进来不同的具体策略来调用不同策略的fighting方法 public class Context {private FightingStrategy fightingStrategy;public Context(FightingStrategy fightingStrategy) {this.fightingStrategy fightingStrategy;}public void fighting(){fightingStrategy.fighting();} } 客户端调用 张无忌遇到了三个对手宋青书、灭绝师太和成昆他分别采用了不同的策略来应战 public class ZhangWuJi {public static void main(String[] args) {Context context;//张无忌遇到对手宋青书采用对弱的对手的策略context new Context(new WeakRivalStrategy());context.fighting();//张无忌遇到对手灭绝师太采用对普通的对手的策略context new Context(new CommonRivalStrategy());context.fighting();//张无忌遇到对手成昆采用对强劲的对手的策略context new Context(new StrongRivalStrategy());context.fighting();} } 3.策略模式优缺点和使用场景 优点 策略模式提供了管理相关的算法族的办法。策略类的等级结构定义了一个算法或行为族。恰当使用继承可以把公共的代码转移到父类里面从而避免重复的代码。使用策略模式可以避免使用多重条件转移语句。多重转移语句不易维护它把采取哪一种算法或采取哪一种行为的逻辑与算法或行为的逻辑混合在一起统统列在一个多重转移语句里面比使用继承的办法还要原始和落后。 缺点 客户端必须知道所有的策略类并自行决定使用哪一个策略类。这就意味着客户端必须理解这些算法的区别以便适时选择恰当的算法类。换言之策略模式只适用于客户端知道所有的算法或行为的情况。策略模式造成很多的策略类每个具体策略类都会产生一个新类。有时候可以通过把依赖于环境的状态保存到客户端里面而将策略类设计成可共享的这样策略类实例可以被不同客户端使用。换言之可以使用享元模式来减少对象的数量。 使用场景 对客户隐藏具体策略(算法)的实现细节彼此完全独立。针对同一类型问题的多种处理方式仅仅是具体行为有差别时。一个类定义了很多行为而且这些行为在这个类里的操作以多个条件语句的形式出现。策略模式将相关的条件分支移入它们各自的 Strategy 类中以代替这些条件语句。
http://www.zqtcl.cn/news/617762/

相关文章:

  • 如何修改asp网站栏目帝国cms网站搬家教程
  • 网站建设与网页制作小团队兼职做网站
  • 嘉兴做网站的公司网红营销价值
  • scala做网站广州化妆品网站制作
  • 网站建设小组五类成员在线购物网站功能模块
  • 网站建设开发详细步骤流程图网站建设与管理实训报告总结
  • 网站设计的素材旅游网站建设标书
  • 做网站还得备案大企业网站建设多少钱
  • 一般做网站空间大概多少钱电商网站开发公司
  • 海报模板在线制作免费网站如何建设个人网站
  • 网站集群建设的意义如何优化推广网站
  • 怎么给公司做免费网站服装品牌网页设计图片
  • 中国通信建设协会网站新手建网站教程
  • 做网站页面的需要哪些技巧wordpress 网址导航
  • 如何做美食网站设计广州网页设计招聘
  • 中国商标网商标查询官方网站页面模板怎么添加文章
  • 建设基础化学网站的经验如何建设网站pdf下载
  • 外贸公司网站设计公司做网站能挣钱不
  • 免费网站ppt模板下载济南建设网站公司
  • 网站建设技术托管免费空间域名注册免备案
  • 威海住房建设部官方网站专科网站开发就业方向
  • 做外贸网站多少钱成都网页设计专业
  • 北京比较好的网站公司在线医生免费咨询
  • 免费的个人网站怎么做企业网站管理系统软件
  • 枣庄住房和城乡建设局网站如何注册国外域名
  • 满洲里建设局网站网页设计公司的目标客户有哪些
  • 英文书 影印版 网站开发怀化组织部网站
  • 网站建设领域的基本五大策略要学会网站细节
  • dede做英文网站优化cms建站系统哪个好
  • eclipse sdk做网站邯郸技术服务类