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

扬中日报百度关键词seo

扬中日报,百度关键词seo,网站开发英文文献,网站建设展板目录 一、行为型模式 1.1、模板方法模式 1.1.1、概念 1.1.2、案例实现 1.1.3、优缺点 1.1.4、使用场景 一、行为型模式 一句话概括行为型模式 行为型模式:类或对象间如何交互、如何划分职责,从而更好的完成任务. 1.1、模板方法模式 1.1.1、概念 …

目录

一、行为型模式

1.1、模板方法模式

1.1.1、概念

1.1.2、案例实现

1.1.3、优缺点

1.1.4、使用场景


一、行为型模式


一句话概括行为型模式

行为型模式:类或对象间如何交互、如何划分职责,从而更好的完成任务.

1.1、模板方法模式

1.1.1、概念

在一个算法骨架中,将某些算法的步骤延迟倒子类中,使得这些算法的可以根据具体的环境实现.

这就像是,我们在设计一个程序的时候经常可能会遇到这种情况:“设计了一个算法步骤,确定了这些步骤的执行顺序,但其中某些步骤还是未知,需要根据具体的业务情况而定”,此时就可以使用模板方法模式,使其放到子类实现.

例如,炒菜的步骤时固定的,分为倒油、热油、倒入要炒食物、倒调料、翻炒这几个步骤,其中 倒油、热油、翻炒这几个步骤是固定的,而炒什么食物 和 倒调料 都是要根据情况而定的.

模板方法模式包含角色:

  • 抽象类:给出一套算法的具体实现和执行顺序,其中包含一些在子类中实现的抽象方法.
  • 具体子类:实现抽象类中定义的抽象方法,他们也是算法执行逻辑的组成步骤.

1.1.2、案例实现

例如上述炒菜案例.

/*** 抽象类: 做菜类*/
public abstract class DoCooking {public void doCooking() {//1.倒油pourOil();//2.热油hotOil();//3.倒食物pourFood();//4.添加调料addSeasoning();//5.翻炒fry();}private void pourOil() {System.out.println("倒油");}private void hotOil() {System.out.println("热油");}/*** 添加食物*/protected abstract void pourFood();/*** 添加调料*/protected abstract void addSeasoning();private void fry() {System.out.println("翻炒");}}
/*** 具体子类: 处理鸡蛋*/
public class HandlerEgg extends DoCooking {@Overrideprotected void pourFood() {System.out.println("将鸡蛋下锅");}@Overrideprotected void addSeasoning() {System.out.println("添加酱油");}}
/*** 具体子类: 处理米饭*/
public class HandlerRice extends DoCooking {@Overrideprotected void pourFood() {System.out.println("将米饭下锅");}@Overrideprotected void addSeasoning() {System.out.println("添加葱花");}}
public class Client {public static void main(String[] args) {//1.炒鸡蛋HandlerEgg egg = new HandlerEgg();egg.doCooking();System.out.println("===================");//2.炒米饭HandlerRice rice = new HandlerRice();rice.doCooking();}}

执行结果如下:

1.1.3、优缺点

优点:

提高代码复用性:将相同代码放到抽象的父类中,不同实现放到不同子类中.

符合开闭原则:将来如果增加一个相关业务吗,只需要扩展实现一个子类,无需修改原有代码.

缺点:

增加系统复杂度:每一个不同实现都需要定义一个子类,会导致类的数量增加,系统更加庞大.

1.1.4、使用场景

  1. 算法的整体步骤固定,只有个别容易改变.
  2. 需要通过子类来决定父类算法中的某步骤的具体实现.

http://www.mmbaike.com/news/24413.html

相关文章:

  • 旅游网站开发需求分析目的外贸推广平台哪家好
  • 鞋服外包加工网seo分析工具
  • 网站模板css投放广告怎么投放
  • 一般做网站多少钱上海谷歌推广
  • 常见b2c网站购物车的设计网络营销的真实案例分析
  • 厦门专业做网站的公司福州关键词排名软件
  • cms 多个网站seo排名优化怎么样
  • 西红门做网站bt蚂蚁
  • 广州平面设计师招聘百度推广优化怎么做的
  • 腾讯 云上做网站教程台湾搜索引擎
  • 网站开发人员要求湖州网站建设制作
  • 建设网站步骤是顶尖文案网站
  • 美国网站做付款方式什么叫百度竞价推广
  • 软件公司怎么赚钱关键词排名优化工具有用吗
  • 怎么在网站标头做图标产品网络推广的方法
  • 摄影工作室官网seo免费优化工具
  • 深圳手机网站定制开发南宁推广公司
  • wordpress日期时间广东培训seo
  • dede网站婚纱模板网络营销推广网站
  • wordpress the7数据库seo职业规划
  • 网站内容管理上海比较好的seo公司
  • 做汽车的网站宁波网站建设与维护
  • 网站模板首页百度指数分析报告案例
  • 霸州做网站的重庆森林电影简介
  • 网站如何做内部链接长沙seo
  • 网站开发net教程软文案例500字
  • 黑龙江网站建站建设在百度上怎么卖自己的产品
  • 网页设计班级网站怎么做网站推广100种方法
  • ecshop生成网站地图url重复新闻发布平台
  • 男女做吃动态网站品牌推广外包公司