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

轻淘客 轻网站怎么做深圳谷歌seo推广

轻淘客 轻网站怎么做,深圳谷歌seo推广,微信分销平台是什么意思,小程序模板源码免费下载文章目录 模板方法模式结构优缺点UML图具体实现UML图代码实现 模板方法模式 模板方法模式(Template Method)是一种基于继承实现的设计模式,主要思想是:将定义的算法抽象成一组步骤,在抽象类中定义算法的骨架&#xff…

文章目录

  • 模板方法模式
  • 结构
  • 优缺点
  • UML图
  • 具体实现
    • UML图
    • 代码实现

模板方法模式

  • 模板方法模式(Template Method)是一种基于继承实现的设计模式,主要思想是:将定义的算法抽象成一组步骤,在抽象类中定义算法的骨架,把具体实现留给子类来实现。
  • 实际使用: JDBCTemplate,HttpServlet,Servlet过滤器。

结构

  • 抽象类(Abstract):定义了算法骨架,包含了一个或者多个抽象方法,这些方法由子类来具体实现。抽象类中通常还包含一个模板方法,用来调用抽象方法和具体方法,控制算法执行的顺序。抽象类中还可以定义钩子方法,用于控制模板方法中的条件控制。
  • 具体类(Concrete Class):继承抽象类,实现抽象方法。

优缺点

  • 优点:提高代码复用性,符合开闭原则,提高代码可维护性。
  • 缺点:每一个不同的实现都需要一个子类来解决。

UML图

在这里插入图片描述

具体实现

例子:炒菜需要放油、放肉、放菜,使用模板方法实现。

UML图

在这里插入图片描述

代码实现

  • 具体类
package com.xxliao.pattern.behavioral.template_method.demo;/*** @author xxliao* @description: 具体类* @date 2024/5/25 18:12*/
public class CookMeat extends CookAbstractCalss{@Overridepublic void addVegetable() {System.out.println("添加肉");}@Overridepublic void addSauce() {}
}
package com.xxliao.pattern.behavioral.template_method.demo;/*** @author xxliao* @description: 具体类* @date 2024/5/25 18:12*/
public class CookCabbage extends CookAbstractCalss{@Overridepublic void addVegetable() {System.out.println("添加包菜");}@Overridepublic void addSauce() {}/*** @description  重写钩子方法* @author  xxliao* @date  2024/5/25 18:13*/@Overridepublic boolean isAddOil() {return false;}
}
  • 抽象类
package com.xxliao.pattern.behavioral.template_method.demo;/*** @author xxliao* @description: 抽象类 -* @date 2024/5/25 18:03*/
public abstract class CookAbstractCalss {/*** @description  模板方法* @author  xxliao* @date  2024/5/25 18:08*/public final void cook() {if(isAddOil()) {this.pourOil();}this.heatOil();this.addVegetable();this.addSauce();this.fry();}// 具体方法public void pourOil() {System.out.println("倒油");}// 具体方法public void heatOil() {System.out.println("加热");}/*** @description  抽象方法,让子类实现* @author  xxliao* @date  2024/5/25 18:05*/public abstract void addVegetable();/*** @description  抽象方法,让子类实现* @author  xxliao* @date  2024/5/25 18:06*/public abstract void addSauce();// 具体方法public void fry() {System.out.println("翻炒");}/*** @description  钩子方法* @author  xxliao* @date  2024/5/25 18:10*/public boolean isAddOil() {return true;}
}
  • 测试客户端
package com.xxliao.pattern.behavioral.template_method.demo;/*** @author xxliao* @description: 模板方法模式 测试客户端* @date 2024/5/25 18:16*/public class Client {public static void main(String[] args) {CookCabbage cookBaocai = new CookCabbage();cookBaocai.cook();System.out.println("===========================================");CookMeat cookMeat = new CookMeat();cookMeat.cook();}
}
  • 测试结果
    在这里插入图片描述
http://www.tj-hxxt.cn/news/83806.html

相关文章:

  • 易语言 做的网站谷歌google play官网
  • 做网站用新域名还是老域名免费b站动漫推广网站2023
  • 网站教学地推网app推广平台
  • 网站建设自seo网络营销技巧
  • 2018年企业网站优化如何做创建自己的网站怎么弄
  • wordpress火车头添加媒体seo推广任务小结
  • 怎样上网站建设接广告的平台
  • 江安县建设招标网站培训班有哪些课程
  • 网站备案身份核验金戈西地那非片
  • 自己做的网站抬头在哪里改看广告赚钱一天50元
  • 一级a做爰片免费网站偷拍厕所免费好用的网站
  • 成都互联网营销师培训windows优化
  • 交城有做网站的吗品牌seo推广
  • 做开箱的网站南宁百度seo软件
  • 西安网站建设哪家好品牌网络营销策划方案
  • 福州网站建设加q479185700seo优化专员编辑
  • 申请做网站编辑组长的工作设想腾讯域名
  • 西安企业网站设计哪家专业淘宝运营培训课程
  • 上海网站群建设seo是干什么的
  • 视频网站做cpa电商seo是什么意思啊
  • 哪里有给网站做优化师培训机构
  • 永兴网站制作公司的seo是什么意思
  • 四川学校网站建设google安卓版下载
  • 什么网站做专利检索报告推广软文模板
  • asp做的网站怎么发布推广软文是什么意思
  • 网站开发技术服务费合同范本最近军事新闻热点大事件
  • 容桂新网站建设制作网页多少钱
  • 建设网站考证做微商怎么找客源加人
  • 免费个人简历表格空白word内蒙古seo优化
  • 明星做代言的购物网站0新媒体营销方式有几种