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

如何用网络营销推广优化网站的意思

如何用网络营销推广,优化网站的意思,可靠的邢台做网站,沈阳公司模板方法模式 问题背景解决方案:模板方法模式基本介绍解决问题代码示例运行结果 钩子方法注意事项和细节 问题背景 豆浆的制作: 1)制作豆浆的流程:选材—>添加配料—>浸泡—>放到豆浆机打碎 2)通过添加不同…

模板方法模式

  • 问题背景
  • 解决方案:模板方法模式
    • 基本介绍
    • 解决问题
    • 代码示例
    • 运行结果
  • 钩子方法
  • 注意事项和细节

问题背景

豆浆的制作:

1)制作豆浆的流程:选材—>添加配料—>浸泡—>放到豆浆机打碎
2)通过添加不同的配料,可以制作出不同口味的豆浆
3)选材、浸泡和放到豆浆机打碎这几个步骤对于制作每种口味的豆浆都是一样的
4)请使用模板方法模式完成

说明:因为模板方法模式,比较简单,很容易就想到这个方案,因此就直接使用,不再使用传统的方案来引出模板方法模式

解决方案:模板方法模式

基本介绍

1)模板方法模式(Template Method Pattern),又叫模板模式(Template Pattern),在一个抽象类中公开定义他的方法的模板。他的子类可以按需重写方法实现,但调用将按照抽象类中定义的方式进行。
2)简单说,模板方法模式定义一个操作中的算法的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构,就可以重定义该算法的某些特定步骤
3)这种类型的设计模式属于行为型模式。

解决问题

首先我们来画出UML类图:
在这里插入图片描述
1)SoyaMikl抽象类是豆浆的制作类
2)select()方法是选择黄豆,这一步所有豆浆都是通用的,所以在SoyaMilk抽象类就可以实现
3)add()方法是添加配料,因为添加配料不同,制作出的豆浆口感不同,所以我们在SoyaMilk抽象类中实现一个抽象方法,交给子类去实现。
4)soak()方法是浸泡黄豆和配料,beat()方法是放到豆浆机打碎,这两个方法都是通用的,所以也在抽象类中实现。
5)make()方法是对外提供的一个调用方法,make()方法调用了下面4个方法,对于调用者来说直接调用SoyaMilk的make()方法就可以制作豆浆了

代码示例

public abstract class SoyaMilk {/*** 制作豆浆*/public void make() {select();add();soak();beat();}/*** 挑选黄豆*/private void select() {System.out.println("挑选上好的黄豆");}/*** 添加配料*/public abstract void add();/*** 浸泡*/private void soak() {System.out.println("将黄豆和配料一起浸泡三个小时");}/*** 打碎*/private void beat() {System.out.println("放到豆浆机中打碎");}
}
/*** 红豆豆浆*/
public class BlackBeanSoyaMilk extends SoyaMilk{@Overridepublic void add() {System.out.println("加入配料红豆");}
}
/*** 花生豆浆*/
public class PennutSoyaMilk extends SoyaMilk{@Overridepublic void add() {System.out.println("加入配料花生");}
}
public class Client {public static void main(String[] args) {// 制作红豆豆浆SoyaMilk blackBeanSoyaMilk = new BlackBeanSoyaMilk();blackBeanSoyaMilk.make();// 制作花生豆浆SoyaMilk pennutSoyaMilk = new PennutSoyaMilk();pennutSoyaMilk.make();}
}

运行结果

在这里插入图片描述

钩子方法

在模板方法模式的父类中,我们可以定义一个方法,它默认不做任何事,子类可以视情况要不要覆盖它,该方法称为“钩子”

注意事项和细节

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

http://www.yidumall.com/news/25206.html

相关文章:

  • dede免费网站模板大数据免费查询平台
  • 自助建站系统官方版百度指数平台
  • wordpress 4.7.3 id智能网站排名优化
  • 洛阳网站设计哪家专业今日头条官网登录入口
  • 一级做a免费观看视频网站商业推广费用一般多少
  • 减少网站跳出率适合发软文的平台
  • 网站怎么做百度排名厦门人才网
  • 张家口企业网站建设建网站软件工具
  • 微信网站开发怎么做网址导航推广
  • 物流网站制作怎么做百度一下搜索引擎大全
  • 买了域名怎么做网站满十八岁可以申请abc认证吗
  • 广东梅州兴宁做网站公司七台河网站seo
  • 沈阳企业建站百度网页游戏大厅
  • phpweb网站建设谷歌搜索引擎在线
  • 如果在阿里云上做自己的网站最有效的恶意点击
  • 北京住房和城乡建设网官网关键词seo深圳
  • 广州 建网站seo兼职
  • 做网站资金来源是什么深圳最新疫情
  • 做的网站响应速度慢线上渠道推广有哪些方式
  • 武汉互联网企业排名成都seo推广员
  • 永康物流网站百度认证
  • 做网站之前要先购买服务器吗网络推广靠谱吗
  • 柳州网站开发沈阳seo网站推广
  • 可以自学网站开发网站营销网
  • 在线原型设计网站查询网入口
  • 通用网站后台管理系统(php版)seo是什么意思呢
  • wordpress 积分阅读东莞seo网络优化
  • 张家港网站建设制作seo网址大全
  • 采集网站会员关键词如何排名在首页
  • 自定义投票网站怎么做yoast seo