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

区域销售网站什么做新手怎么做网络销售

区域销售网站什么做,新手怎么做网络销售,网站前端是什么意思,大浪做网站模板方法模式 编写制作豆浆的程序,说明如下 1)制作豆浆的流程选材添加配料浸泡放到豆浆机打碎 2)通过添加不同的配料,可以制作出不同口味的豆浆 3)选材、浸泡和放到豆浆机打碎这几个步骤对于制作每种口味的豆浆都是一样的 4)请使用模板方法模式完成 说明…

模板方法模式

  • 编写制作豆浆的程序,说明如下
    1)制作豆浆的流程选材添加配料浸泡放到豆浆机打碎
    2)通过添加不同的配料,可以制作出不同口味的豆浆
    3)选材、浸泡和放到豆浆机打碎这几个步骤对于制作每种口味的豆浆都是一样的
    4)请使用模板方法模式完成 说明: 因为模板方法模式,比较简单, 很容易就想到这个方案 ,因此就直接使用,不再使用传统的方案来引出模板方法模式

原理图
在这里插入图片描述

1、AbstractClass抽象类,类中实现了模板方法(template),定义了算法的骨架,具体子类需要去实现,其他的抽象类方法operation2,3,4
2、ConcreteClass实现抽象方法operation2,3,4已完成算法中特定子类的步骤

@Slf4j
public abstract class SoyaMilk {//模板方法 make 模板方法可以做成final,不让子类去覆盖final void make() {select();addCondiments();soak();beat();}//选择材料void select() {log.info("第一步:选择好的新鲜黄豆");}//添加不同的配料,抽象方法,子类具体实现。abstract void addCondiments();//浸泡void soak() {log.info("第三步:黄豆和配料开始浸泡,需要3小时");}//打浆void beat() {log.info("第四步:黄豆和配料放到豆浆机中去打碎。");}
}
@Slf4j
public class PeanutSoyaMilk extends  SoyaMilk{@Overridevoid addCondiments() {log.info("第二步:加入花生");}
}
@Slf4j
public class RedBeanSoyaMilk extends  SoyaMilk{@Overridevoid addCondiments() {log.info("第二步:加入红豆");}
}
@Slf4j
public class Client {public static void main(String[] args) {log.info("------制作红豆豆浆------");RedBeanSoyaMilk redBeanSoyaMilk = new RedBeanSoyaMilk();redBeanSoyaMilk.make();log.info("=====================================");log.info("------制作花生豆浆------");PeanutSoyaMilk peanutSoyaMilk = new PeanutSoyaMilk();peanutSoyaMilk.make();}
}
------制作红豆豆浆------
- 第一步:选择好的新鲜黄豆
- 第二步:加入红豆
- 第三步:黄豆和配料开始浸泡,需要3小时
- 第四步:黄豆和配料放到豆浆机中去打碎。
=====================================
------制作花生豆浆------
- 第一步:选择好的新鲜黄豆
- 第二步:加入花生
- 第三步:黄豆和配料开始浸泡,需要3小时
- 第四步:黄豆和配料放到豆浆机中去打碎。

钩子方法

在模板方法模式的父类中,我们可以定义一个方法,不做任何事,子类可以去视为情况要不要覆盖它,称之为钩子程序。

@Slf4j
public abstract class SoyaMilk {//模板方法 make 模板方法可以做成final,不让子类去覆盖final void make() {select();if (customerWantCondiments()) {addCondiments();}soak();beat();}//......//钩子方法,决定是否需要添加配料boolean customerWantCondiments() {return true;}
}
@Slf4j
public class PureSoyaMilk extends SoyaMilk {@Overridevoid addCondiments() {//空实现}@Overrideboolean customerWantCondiments() {return false;}
}
@Slf4j
public class Client {public static void main(String[] args) {log.info("=====================================");log.info("------制作纯豆浆------");SoyaMilk pureSoyaMilk = new PureSoyaMilk();pureSoyaMilk.make();}
}
=====================================
------制作纯豆浆------
- 第一步:选择好的新鲜黄豆
- 第三步:黄豆和配料开始浸泡,需要3小时
- 第四步:黄豆和配料放到豆浆机中去打碎。
  • 模板方法在源码中的应用(spring IOC源码分析)
    在这里插入图片描述
    在这里插入图片描述

模板方法的注意事项和细节

1、基本的思想是:算法只存在于一个地方,也就是在父类中容易修改。,
需要修改算法时,只要修改父类的模板方法或者已经实现的某些步骤,子类就会继承这些修改。
2、实现了最大化代码复用,父类的模板方法和已经实现的某些步骤被直接的继承而直接使用。
3、即同意了算法,也提供了很大的灵活性。父类的模板方法确保了算法的结构保持不变,同时有子类提供部分步骤的实现。
4、该模式的不足之处:每一个不同的实现都需要一个子类实现,刀之类的个数增加,是的系统更加庞大。
5、一般末班方法都加上final关键字。发囊之子类重写模板方法。
6、模板方法模式使用场景。当要完成某个过程,该过程要执行一系列步骤,这一系列的步骤基本相同
但是个别步骤在实现时有可能不同,通常考虑用模板方法模式来处理。

http://www.dtcms.com/wzjs/457712.html

相关文章:

  • 红色政府建站模板网站设计方案
  • 基础网站建设的实施步骤跨境电商平台有哪些
  • web免费代码网站什么样的人适合做营销
  • 金融网站建设方案ppt模板北京百度seo排名点击软件
  • 连云港网站建设电话跨境电商平台有哪些
  • 自媒体自助下单网站怎么做电商培训大概多少学费
  • 做网站的步骤 优帮云电商平台推广费用大概要多少
  • node 做的网站后端专门制作小程序的公司
  • 律师网站建设怎么样谷歌seo搜索优化
  • 电子商务网站建设卷子推广运营平台
  • 计算机毕设代做网站关键词怎么优化到百度首页
  • 网站产品链接怎么做百度统计登录
  • 学做网站要学哪些营销型网站建设需要多少钱
  • 潍坊市建设工程质量安全监督站网站推广网站的方法有哪些
  • wordpress多级分类目录优化关键词的作用
  • wordpress商城网站seo推广小分享
  • 网站建设手机端管网电子商务营销模式有哪些
  • 小城镇建设的网站百度官方人工客服电话
  • 阳谷网站建设网络推广服务协议
  • 海外网站seo推广公司属于什么公司
  • 单县网站建设seo教程网
  • 网上ui设计培训seo中文意思是
  • 建设工程招标专业网站淘宝交易指数换算工具
  • 广西城乡建设网站seo关键词布局技巧
  • 西班牙外贸网站合肥百度快速排名提升
  • 网站空间怎么建站每日新闻摘抄10一30字
  • 泰安网络直销公司哪里搜索引擎优化好
  • 上海新闻网下载长沙seo关键词
  • 微网站 方案南宁网站关键词推广
  • 虚拟网站建设指导河北seo网络优化培训