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

制作网站学什么软件网站权重

制作网站学什么软件,网站权重,电信 网站备案,webstorm网站开发案例22.模板模式 模板方法(Template Method)作为Java的设计模式之一,一个词概括其优势特点那就是:抽象步骤 首先我们应该抽出共通的东西做一个父类(Base类),其次具体的蛋糕制作由子类进一步实现&…

22.模板模式
模板方法(Template Method)作为Java的设计模式之一,一个词概括其优势特点那就是:抽象步骤
首先我们应该抽出共通的东西做一个父类(Base类),其次具体的蛋糕制作由子类进一步实现,每一种制作方式我们就拓展一个子类

UML类图:
在这里插入图片描述

仔细观察Cake类,你会发现make方法是这个类的核心,make()中便是执行制作的核心代码,为了尽可能将共通的东西都留在父类(base类),我们要进一步将make()中的代码拆分,让其变成众多子步骤方法如下:
一、抽象类:蛋糕

public abstract class Cake {public final void make(){makeStart();//开始制作makeCakeGerm();//制作蛋糕胚makeCream();//怎么做wipeCakeGerm();//将奶油抹到蛋糕胚上piping();//怎么抹makeFinish();//结束制作}private void makeStart(){System.out.println("开始制作蛋糕");}private void makeCakeGerm(){System.out.println("制作蛋糕胚");}public abstract void makeCream();private void wipeCakeGerm(){System.out.println("将奶油抹到蛋糕胚上");}public abstract void piping();private void makeFinish(){System.out.println("结束制作蛋糕");}
}

我们可以看到已经把make方法中的步骤进一步拆分细化,有先做蛋糕胚,再做奶油,然后涂抹到蛋糕胚上,最后裱花
我们来注意几个细节:

  • 1、cake类成为了抽象类,没啥好说的,方法都抽象了
  • 2、make方法增加了final修饰,不希望子类覆写这个方法,防止流程被更改
  • 3、步骤抽象化,这是模板方法的核心,步骤的具体实现交由子类自行实现,每一种蛋糕都可以用不同的子类独立实现,这样可读性就大大提高了,而且扩展也非常方便,只需要实现一个新的子类即可

接下来我们实现具体的蛋糕子类:
我们这里可以这样想,蛋糕胚基本上没什么差别,抹奶油也都是常规操作,不一样的是制作什么样的奶油以及裱花的样式

蛋糕A:

public class Cake_A extends Cake {@Overridepublic void makeCream() {System.out.println("植物奶油 抹茶味");}@Overridepublic void piping() {System.out.println("裱花八朵");}
}

蛋糕B:

public class Cake_B extends Cake {@Overridepublic void makeCream() {System.out.println("动物奶油 巧克力味");}@Overridepublic void piping() {System.out.println("裱个生日快乐");}
}

测试类:

public class TemplateTest {public static void main(String[] args) {Cake cake_a = new Cake_A();Cake cake_b = new Cake_B();cake_a.make();System.out.println("*********************");cake_b.make();}
}

输出结果:

开始制作蛋糕
制作蛋糕胚
植物奶油 抹茶味
将奶油抹到蛋糕胚上
裱花八朵
结束制作蛋糕开始制作蛋糕
制作蛋糕胚
动物奶油 巧克力味
将奶油抹到蛋糕胚上
裱个生日快乐
结束制作蛋糕
http://www.dtcms.com/wzjs/367161.html

相关文章:

  • 淄川政府网站建设托管百度免费建网站
  • 美国做美业网站的么特网站建设推广服务
  • 武汉市城市建设档案馆网站网络营销的表现形式有哪些
  • 学室内装潢设计哪个学校好西安官网seo
  • 文具网站建设策划书广州seo推广优化
  • 佛山 网站推广产品的文案
  • 网站整站源码下载培训班学员培训心得
  • 做奶茶吧店网站网上销售平台怎么做
  • 网站建设运城牛排seo系统
  • 沈阳做网站优化的公司哪家好今日最新国内新闻重大事件
  • 专门做mmd的网站网站建设公司哪个好呀
  • 的网站建设公司哪家好seo服务外包客服
  • dedecms 网站地图 插件十大短视频平台排行榜
  • 东莞外贸网站推广网站更换服务器对seo的影响
  • 如何做交友网站google广告投放
  • 网站开发swf素材种子搜索器
  • 时尚杂志网站设计分析百度认证怎么认证
  • 本地主机做网站怎么在百度上推广自己的产品
  • vps网站建设市场推广渠道有哪些
  • 网站能搜索到新闻危机公关
  • 假网站怎么做呢怎样制作一个自己的网站
  • 大型行业门户网站开发建设seo应该如何做
  • 黑龙江省建设官方网站荆州seo推广
  • 政府查询网站建设方案网络营销代运营外包公司
  • 网站建设项目网络图如何做网络营销?
  • 江苏省华建建设股份有限网站优化服务是什么意思
  • 一个ip地址上可以做几个网站吗全网引擎搜索
  • ui设计在哪个网站可以接做小红书seo软件
  • 宝塔网站建设百度ai智能写作工具
  • 北京网站备案注销网络营销推广活动