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

2345网址导航app关键词推广优化

2345网址导航app,关键词推广优化,页面设计工资有多少,王爷在线追妻前言 模版模式和策略模式在日常开发中经常遇到,这两个设计模式有啥区别,这里简单总结下。 模版模式简单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.hrbkazy.com/news/15072.html

相关文章:

  • 蚌埠做网站多少钱百度客服电话人工服务
  • 网站logo设计创意百度电话客服
  • 视频在线观看网站怎么建设淘宝搜索关键词排名查询工具
  • 外网网站建设调研报告软文代写自助发稿平台
  • 南宁哪里有做网站的公司seo高效优化
  • 胶州网站建设公司哪家好市场营销公司有哪些
  • 做游戏网站思想步骤百度seo关键词优化公司
  • 网站开发文档需求模板深圳搜索引擎优化推广
  • 做网站 多少人搜狗网站提交入口
  • 网站备案号 脱离服务商seo手机优化软件哪个好用
  • 规划营销型的网站结构百度云网盘免费资源
  • 私人建设网站长沙网址seo
  • 做网站需要注册什么类型的公司谷歌浏览器网址
  • 交友网网站开发文档网站seo技术能不能赚钱
  • 昆山品牌网站建设明天上海封控16个区
  • 网站搭建徐州百都网络搭建淘宝seo搜索优化
  • 网站技术可行性牛奶推广软文文章
  • 企业网站建设案例管理系统
  • 北京网站建设的价格天数字营销课程
  • 个人网站,可以做淘宝客吗搜索广告排名
  • 微信h5游戏网站建设网页优化最为重要的内容是
  • 网站是如何做的好竞价托管 微竞价
  • 腾讯云做网站教程b站视频推广网站2023
  • 建设局局长是什么级别郑州网站建设推广优化
  • 硬件开发教程吉林seo刷关键词排名优化
  • 备案用网站建设方案书百度识图搜索引擎
  • 在哪个网站可以搜画画做品重庆网站页面优化
  • 做网站设计需要多少钱比较成功的网络营销案例
  • 如何分析网站优缺点营销型网站建设设计
  • 鄂州网站开发网站建设山东聚搜网络