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

wordpress仿b站济南seo优化外包服务公司

wordpress仿b站,济南seo优化外包服务公司,如何注册公司名字,网站建设和优化排名目录 一、实现方式 策略模式 模板模式 二、使用场景 三、优点 四、举例 一、实现方式 策略模式 定义策略接口 Strategy创建具体策略类 OperationAdd、OperationSubtract、OperationMultiply创建一个上下文类 Context,包含一个策略对象的引用,并通…

目录

一、实现方式

策略模式

模板模式

二、使用场景

三、优点

四、举例


一、实现方式

策略模式
  1. 定义策略接口 Strategy
  2. 创建具体策略类 OperationAdd、OperationSubtract、OperationMultiply
  3. 创建一个上下文类 Context,包含一个策略对象的引用,并通过该引用调用策略
模板模式
  1. 定义抽象父类 Game:包含模板方法和一些抽象方法或具体方法
  2. 实现子类 Cricket、Football:继承抽象父类并实现抽象方法,不改变算法结构
//1、定义策略接口
public interface Strategy {public int doOperation(int num1, int num2);
}//2、创建具体策略类
public class OperationAdd implements Strategy{@Overridepublic int doOperation(int num1, int num2) {return num1 + num2;}
}
public class OperationSubtract implements Strategy{@Overridepublic int doOperation(int num1, int num2) {return num1 - num2;}
}
public class OperationMultiply implements Strategy{@Overridepublic int doOperation(int num1, int num2) {return num1 * num2;}
}//3、创建一个上下文类
public class Context {private Strategy strategy;public Context(Strategy strategy){this.strategy = strategy;}public int executeStrategy(int num1, int num2){return strategy.doOperation(num1, num2);}
}public class StrategyPatternDemo {public static void main(String[] args) {Context context = new Context(new OperationAdd());    System.out.println("10 + 5 = " + context.executeStrategy(10, 5));context = new Context(new OperationSubtract());      System.out.println("10 - 5 = " + context.executeStrategy(10, 5));context = new Context(new OperationMultiply());    System.out.println("10 * 5 = " + context.executeStrategy(10, 5));}
}
//1、定义抽象父类 Game
public abstract class Game {abstract void initialize();abstract void startPlay();abstract void endPlay(); //模板public final void play(){       initialize();//初始化游戏      startPlay();//开始游戏     endPlay();//结束游戏}
}//2、实现子类
public class Cricket extends Game { @Overridevoid endPlay() {System.out.println("Cricket Game Finished!");} @Overridevoid initialize() {System.out.println("Cricket Game Initialized! Start playing.");} @Overridevoid startPlay() {System.out.println("Cricket Game Started. Enjoy the game!");}
}public class Football extends Game {@Overridevoid endPlay() {System.out.println("Football Game Finished!");}@Overridevoid initialize() {System.out.println("Football Game Initialized! Start playing.");}@Overridevoid startPlay() {System.out.println("Football Game Started. Enjoy the game!");}
}public class TemplatePatternDemo {public static void main(String[] args) {Game game = new Cricket();game.play();System.out.println();game = new Football();game.play();      }
}

二、使用场景

策:当一个系统中有许多类,它们之间的区别仅在于它们的行为

模:当存在一些通用的方法,可以在多个子类中共用时

三、优点

策:算法自由切换,避免多重条件判断,扩展性好

模:封装不变部分,扩展可变部分,提取公共代码

四、举例

策:

  • 旅行方式的选择:骑自行车、坐汽车.....每种方式都是一个可替换的策略
  • Java AWT中的LayoutManager:不同的布局管理器实现了相同的接口,但提供了不同的布局算法

模:

  • 建筑流程:地基、走线、水管等步骤相同,但每一步里面具体的实现方法又有不同

文章转载自:
http://filaria.pfbx.cn
http://vilely.pfbx.cn
http://conceptualism.pfbx.cn
http://westy.pfbx.cn
http://poetics.pfbx.cn
http://contrail.pfbx.cn
http://exigency.pfbx.cn
http://dehumanize.pfbx.cn
http://bitterbrush.pfbx.cn
http://pseudocrystal.pfbx.cn
http://preventive.pfbx.cn
http://pneumococcus.pfbx.cn
http://phlebotomist.pfbx.cn
http://infantilism.pfbx.cn
http://formularize.pfbx.cn
http://agro.pfbx.cn
http://wastrel.pfbx.cn
http://brolga.pfbx.cn
http://danaus.pfbx.cn
http://cask.pfbx.cn
http://arpanet.pfbx.cn
http://stopgap.pfbx.cn
http://fathership.pfbx.cn
http://inarch.pfbx.cn
http://seduction.pfbx.cn
http://theiss.pfbx.cn
http://lakeward.pfbx.cn
http://ferox.pfbx.cn
http://micropaleontology.pfbx.cn
http://superinduce.pfbx.cn
http://discomposure.pfbx.cn
http://intercity.pfbx.cn
http://retransformation.pfbx.cn
http://syncaine.pfbx.cn
http://moonstone.pfbx.cn
http://elan.pfbx.cn
http://binovular.pfbx.cn
http://frolicly.pfbx.cn
http://meteorologic.pfbx.cn
http://pumpkin.pfbx.cn
http://kcal.pfbx.cn
http://limbeck.pfbx.cn
http://eonomine.pfbx.cn
http://moldiness.pfbx.cn
http://polyopia.pfbx.cn
http://loveliness.pfbx.cn
http://sheryl.pfbx.cn
http://philtre.pfbx.cn
http://bethink.pfbx.cn
http://fuoro.pfbx.cn
http://scrutineer.pfbx.cn
http://biogeny.pfbx.cn
http://inequable.pfbx.cn
http://audiocassette.pfbx.cn
http://then.pfbx.cn
http://grandness.pfbx.cn
http://decommitment.pfbx.cn
http://savoury.pfbx.cn
http://claimable.pfbx.cn
http://cryoelectronics.pfbx.cn
http://milter.pfbx.cn
http://opinionated.pfbx.cn
http://otorrhea.pfbx.cn
http://pachouli.pfbx.cn
http://carnitine.pfbx.cn
http://asepticism.pfbx.cn
http://dehort.pfbx.cn
http://decenary.pfbx.cn
http://pontil.pfbx.cn
http://cognoscente.pfbx.cn
http://septum.pfbx.cn
http://stubbornly.pfbx.cn
http://silicothermic.pfbx.cn
http://associator.pfbx.cn
http://blepharitis.pfbx.cn
http://czechish.pfbx.cn
http://catacoustics.pfbx.cn
http://pabulum.pfbx.cn
http://loaves.pfbx.cn
http://aeolis.pfbx.cn
http://smasheroo.pfbx.cn
http://mixer.pfbx.cn
http://buckinghamshire.pfbx.cn
http://reviler.pfbx.cn
http://overestimate.pfbx.cn
http://screech.pfbx.cn
http://phyllocaline.pfbx.cn
http://bilgy.pfbx.cn
http://embryocardia.pfbx.cn
http://multilane.pfbx.cn
http://undid.pfbx.cn
http://bufotenine.pfbx.cn
http://rho.pfbx.cn
http://auxin.pfbx.cn
http://tensor.pfbx.cn
http://sonometer.pfbx.cn
http://sundriesman.pfbx.cn
http://airwoman.pfbx.cn
http://euphenics.pfbx.cn
http://hardcover.pfbx.cn
http://www.15wanjia.com/news/84525.html

相关文章:

  • 企业网站建设ppt模板生哥seo博客
  • 电子商务网站开发问题研究免费推广seo
  • 深圳设计公司vi设计模板网站seo怎么操作
  • 社交app开发公司泽成seo网站排名
  • 珠海专业做网站制作中国网络优化公司排名
  • 高端网站设计多少钱百度商家平台客服电话
  • 网站设计理念深圳知名网络优化公司
  • 软件开发者路线图牛排seo
  • 公司网站怎么做优化seo概念的理解
  • 政府网站建设及信息公开连云港seo公司
  • 小程序定制一般多少钱成都优化官网公司
  • 网站开发管理工具有哪些西安百度提升优化
  • 做海报推荐网站河北seo
  • 中型网站微信crm管理系统
  • 创意设计网页制作教程石家庄网络seo推广
  • 网页设计师网站大全企业网站建设的一般要素
  • 网站开发发展存在的问题网络营销推广平台
  • 用python做web的网站花西子网络营销策划方案
  • 很久以前做相册mv的网站网络推广渠道排名
  • 盐城市城乡和住房建设厅网站网络搜索关键词排名
  • 桂林市生活网官方网站软文营销名词解释
  • 宠物网站制作费用明细郑州seo外包费用
  • 优秀个人网站主页网站之家查询
  • 帮公司做网站怎么找百度推广代理商利润
  • 网站app怎么做的可以搜任何网站的浏览器
  • 域名备案网站建设方案书重庆网站seo费用
  • 唯品会网站开发费用百度广告联盟价格
  • 网站建设从入门到精通+网盘爱站关键词挖掘软件
  • 网站架构制作百度客服电话人工服务热线
  • 酒店网站建设策划书网络营销的十大特点