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

狠狠做网站改成什么了下载小程序到微信

狠狠做网站改成什么了,下载小程序到微信,调查公司做网站需要备案吗,网站推广seo教程前言 模版模式和策略模式在日常开发中经常遇到,这两个设计模式有啥区别,这里简单总结下。 模版模式简单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.yayakq.cn/news/265327/

相关文章:

  • html网站开发流程营销型网站搭建公司
  • 专业网站制作的公司哪家好购彩网站建设
  • 高端网站建设价格移动网站适配
  • 门户网站优化怎么做网站登不上去的原因
  • 郑州建设网店网站坪山网站建设行业现状
  • Python用数据库做网站萍乡网站建设
  • 网站需求建设关系书宿迁房产网安居客
  • 自己做的网站字体变成方框上海发乐门网站建设公司
  • 关键词搜索爱站网怎么开发wordpress子主题
  • 企业网站建设知识新站整站优化
  • 汉中定制网站建设公司郴州网络推广服务
  • 沧州做网站费用网站建设项目的网络图
  • 手机网站菜单广州哪些做网站的公司
  • 广州三合一网站建设怎么制作图片表格
  • 深圳市推广网站的公司wordpress impreza
  • 公司做网站服务费怎样做账斗门网站建设
  • 玉环建设局网站app推广联盟平台
  • 西安 网站开发 招聘关键词搜索工具好站网
  • 专做定制网站建设福州商城网站开发公司
  • 杭州网站seo推广软件网站建设 流程图
  • 网站备案多久过期wordpress 知识库
  • 管理网站怎么做的做链接哪个网站好
  • 商城系统网站模板专门做国外家具书籍的网站
  • 保山市城市建设网站洛克设计平台
  • 档案门户网站建设方案搜索引擎有哪些平台
  • 个人网站的建设方法和过程简约大气网站首页
  • 免费下软件的网站济南企业做网站推广网站
  • 做期货苯乙烯的网站济南市住房和城乡建设局网站
  • 无锡富通电力建设有限公司网站中小企业微网站建设
  • 创新的沈阳网站建设小程序开发外包报价表