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

网站怎么做域名凡科建站下载

网站怎么做域名,凡科建站下载,网站伪静态文件,如何做网站的教程前言 模版模式和策略模式在日常开发中经常遇到,这两个设计模式有啥区别,这里简单总结下。 模版模式简单demo // 抽象模板类 abstract class AbstractClass {// 模板方法定义了算法的骨架public void templateMethod() {// 执行固定的步骤step1();step…

前言

模版模式和策略模式在日常开发中经常遇到,这两个设计模式有啥区别,这里简单总结下。

模版模式简单demo

// 抽象模板类
abstract class AbstractClass {// 模板方法定义了算法的骨架public void templateMethod() {// 执行固定的步骤step1();step2();step3();}// 抽象方法,由子类实现具体的步骤protected abstract void step1();protected abstract void step2();// 钩子方法,由子类选择性地实现具体的步骤protected void step3() {// 默认实现}
}// 具体模板类
class ConcreteClass extends AbstractClass {protected void step1() {System.out.println("执行步骤1");}protected void step2() {System.out.println("执行步骤2");}protected void step3() {System.out.println("执行步骤3");}
}// 客户端代码
public class TemplatePatternExample {public static void main(String[] args) {AbstractClass template = new ConcreteClass();template.templateMethod();}
}

上述例子中,抽象类AbstractClass定义了算法的骨架,通过templateMethod方法控制算法的整体流程,每个具体的步骤由抽象方法和钩子方法定义。具体子类ConcreteClass根据需要实现具体的步骤。客户端通过创建具体子类的实例并调用templateMethod方法来使用模板模式。

策略模式简单demo

// 定义一个接口,表示可互换的算法
interface Strategy {void execute();
}// 实现具体的算法
class ConcreteStrategy1 implements Strategy {public void execute() {System.out.println("执行策略1");}
}// 实现具体的算法
class ConcreteStrategy2 implements Strategy {public void execute() {System.out.println("执行策略2");}
}// 客户端代码
public class StrategyPatternExample {public static void main(String[] args) {// 根据需要选择具体的策略Strategy strategy = new ConcreteStrategy1();// 执行策略strategy.execute();// 切换到另一个策略strategy = new ConcreteStrategy2();// 执行策略strategy.execute();}
}

上述例子中,定义了一个表示可互换的算法的接口Strategy,并实现了两个具体的策略类ConcreteStrategy1和ConcreteStrategy2。客户端根据需要选择并使用不同的策略。通过创建具体策略类的实例并调用execute方法来使用策略模式。

总结

模板模式(Template Pattern)和策略模式(Strategy Pattern)是两种常用的设计模式,它们在解决不同的问题上有一些区别。

  • 模板模式是一种行为设计模式,它定义了一个算法的骨架,将一些步骤的具体实现延迟到子类中。模板模式通过在父类中定义算法的骨架然后使用抽象方法暴露可变部分,使得子类可以根据自身需求实现具体的步骤。这种方式可以确保算法的结构不变,但允许特定步骤的自定义实现。
  • 策略模式也是一种行为设计模式,它定义了一组可以相互替换的算法,并使得这些算法可以独立于使用算法的客户而变化。策略模式将每个算法封装在不同的类中,并允许客户端根据需要选择要使用的算法。这种方式将算法的选择和使用与具体算法的实现分离开来,提供了更高的灵活性和可扩展性。

总结来说,模板模式侧重于使用继承来实现算法的骨架,并允许子类实现具体的步骤,而策略模式侧重于使用组合来选择和使用不同的算法实现。模板模式在父类中定义了算法的骨架,子类只负责实现具体的步骤,而策略模式将算法的选择和使用完全交给了客户端。

http://www.ds6.com.cn/news/7611.html

相关文章:

  • 网站建设网址地推app
  • spoc课程网站建设太原好的网站制作排名
  • 做一个网站加优化排名得多少钱app开发费用一般多少钱
  • 网站左侧导航代码网络营销案例视频
  • 专业创建网站公司企业产品推广运营公司
  • 一个月做网站淘宝seo关键词的获取方法有哪些
  • 深圳最专业的高端网站建设惠州seo外包
  • 杭州做网站制作广告网络推广
  • 网站改版制作网站推广一般多少钱
  • 怎样做团购网站新华传媒b2b商务平台
  • 义乌网站建设托管google下载官网
  • 建商城网站的平台中小企业管理培训班
  • 沈阳网站建设开发google下载app
  • 网站建设的案例重庆seo软件
  • 广州营销网站建设设计短视频培训机构排名
  • 有哪些做任务赚钱的网站免费营销软件网站
  • 高端做网站价格重庆seo技术
  • 东莞网站建设有什么网络公司打广告去哪个平台免费
  • 克旗网站制作5229998代运营一个月多少钱
  • 与wordpress集成软件seo在线培训机构排名
  • 装饰工程造价青岛seo推广专员
  • 网站开发定价广告主平台
  • 深圳电商平台网站建设东莞全网推广
  • wordpress主题 xueui优化推广网站淄博
  • 网站建设浙江公司建官网要多少钱
  • 呼和浩特网站建设宣传百度快速排名用是
  • 个人怎样建设网站写文案接单平台
  • 视频解析接口网站怎么做便宜的seo网络营销推广
  • 新品销售网站建设广州seo公司品牌
  • 建设网站公司招聘2023第三波疫情已经到来了