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

做电影网站有风险吗软件设计专业学什么

做电影网站有风险吗,软件设计专业学什么,恒一信息深圳网站建设公司2,宁波网络推广方案公司推荐模板方法模式(Template Method Pattern)是一种行为型设计模式,它在父类中定义一个算法的框架,允许子类在不改变算法结构的情况下重写算法的某些特定步骤。这种模式非常适合于那些有一定公共流程,但某些步骤需要子类定制…

模板方法模式(Template Method Pattern)是一种行为型设计模式,它在父类中定义一个算法的框架,允许子类在不改变算法结构的情况下重写算法的某些特定步骤。这种模式非常适合于那些有一定公共流程,但某些步骤需要子类定制化的场景。
想学习springboot,springboot+vue项目,SpringCloudAlibaba的小伙伴,可以免费观看视频地址:

springcloudalibaba地址:

https://www.bilibili.com/video/BV1cFDEYWEkY/?vd_source=14d27ec13a4737c281b7c79463687112

springboot地址:

https://www.bilibili.com/video/BV1nkmRYSErk/?vd_source=14d27ec13a4737c281b7c79463687112

springboot+vue案例地址:

https://www.bilibili.com/video/BV1JLSEYJETc/?vd_source=14d27ec13a4737c281b7c79463687112

模板方法模式的主要角色:

  1. 抽象类(Abstract Class):定义算法的框架和扩展点(即模板方法和钩子方法)。
  2. 具体实现类(Concrete Classes):实现抽象类中的抽象方法。

简单案例:制作饮料

假设我们有一个饮料店,提供两种饮料:咖啡和绿茶。制作这两种饮料的基本步骤是相似的,但某些步骤(比如添加的调料)有所不同。我们可以使用模板方法模式来定义一个通用的制作饮料流程,并允许每种饮料自定义特定的步骤。

1. 定义抽象类(Abstract Class)
public abstract class Beverage {// 模板方法public final void prepareRecipe() {boilWater();brew();pourInCup();if (customerWantsCondiments()) {addCondiments();}}// 钩子方法,子类可以覆盖此方法以返回不同的值public abstract boolean customerWantsCondiments();// 基本方法,子类可以覆盖,但通常不覆盖public void boilWater() {System.out.println("Boiling water");}public void brew() {System.out.println("Brewing the tea");}public void pourInCup() {System.out.println("Pouring into cup");}// 抽象方法,子类必须实现public abstract void addCondiments();
}
2. 创建具体实现类(Concrete Classes)
public class Coffee extends Beverage {@Overridepublic boolean customerWantsCondiments() {return true;}@Overridepublic void brew() {System.out.println("Dripping coffee through filter");}@Overridepublic void addCondiments() {System.out.println("Adding sugar and milk");}
}public class GreenTea extends Beverage {@Overridepublic boolean customerWantsCondiments() {return false;}@Overridepublic void brew() {System.out.println("Steeping green tea");}@Overridepublic void addCondiments() {System.out.println("Adding lemon");}
}
3. 客户端代码
public class Client {public static void main(String[] args) {Beverage coffee = new Coffee();coffee.prepareRecipe();System.out.println("--------------------");Beverage tea = new GreenTea();tea.prepareRecipe();}
}

在这个案例中,Beverage 类定义了一个制作饮料的模板方法 prepareRecipe(),它规定了制作饮料的基本步骤。CoffeeGreenTea 类继承自 Beverage 类,并根据需要重写了 brew()addCondiments() 方法。客户端代码通过创建 CoffeeGreenTea 的实例,并调用它们的 prepareRecipe() 方法来制作饮料。

输出结果将展示两种饮料的制作过程,每种饮料都有其特定的步骤和调料。这个模式使得添加新的饮料类型变得非常容易,只需创建一个新的类继承自 Beverage 并实现必要的方法即可。

http://www.yayakq.cn/news/777569/

相关文章:

  • 做时彩网站违法吗石家庄网站定制
  • wordpress顺序设置别名seo搜索引擎优化怎么做
  • 网站开发的项目开发厦门seo计费
  • 多语言企业网站源码wordpress 弹幕
  • phpcms网站logo地宝网南昌租房信息
  • 西宁网站建设的公司哪家好微信分销小程序开发
  • 汕头潮阳网站建设东莞长安
  • 网页设计与制作教程第五版课后答案如何优化网站结构
  • 阿里云域名注册证书吉林网络seo
  • 新化 网站开发阿里云域名购买
  • 淘宝运营跟做网站哪种工资高最新注册域名查询
  • 网站建设与维护 出题网站建设年度汇报
  • 怎么把自己做的网站怎么做微信网页制作
  • 一般做公司网站需要哪几点成都医疗seo整站优化
  • 专业提供网站建设服务的企业凯里州建公司简介
  • 泸县手机网站建设有哪些单页网站
  • 音乐网站建设论文的目的和意义电子设计大赛网站开发
  • 学校网站建设价格明细表什么公司做企业网站
  • 英文营销网站手机排行榜最新第一名
  • 做网站的是什么软件接app推广
  • 重庆网站建设模板制作电子商务网站开发报价
  • 苏州市城乡和建设局网站wordpress制作单页
  • 南通优化网站排名定制电商平台
  • 网站建设原码昆明企业网站排名公司
  • 贵州做网站kuhugz设计图室内效果图
  • 怎么在网站后台挂马最新热点新闻
  • 检察 网站建设wordpress网站如何加百度搜索
  • 佛山网站公司专业的外贸行业网站设计
  • 惠州网站策划建设软件平台介绍
  • 合肥设网站昌吉网站建设咨询电话