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

官方网站面膜做代理公司自己买服务器建设网站

官方网站面膜做代理,公司自己买服务器建设网站,新手站长如何购买虚拟主机做网站,筑巢网站建设怎么样模板方法模式是Erich Gamma#xff0c;Richard Helm#xff0c;Ralph Johnson和John Vlissides在著名的《 设计模式》一书中解释的23种设计模式之一。 这种模式的意图表示为#xff1a; 在操作中定义算法的框架#xff0c;将某些步骤推迟到子类。 TemplateMethod允许子类重… 模板方法模式是Erich GammaRichard HelmRalph Johnson和John Vlissides在著名的《 设计模式》一书中解释的23种设计模式之一。 这种模式的意图表示为 在操作中定义算法的框架将某些步骤推迟到子类。 TemplateMethod允许子类重新定义算法的某些步骤而无需更改算法的结构。 为了简单地解释请考虑以下情形假设有一个工作流系统其中必须以给定的顺序执行4个任务才能成功完成工作流。 4个任务中的一些任务可以通过以下方式自定义 不同的工作流程系统实施。 通过将工作流系统封装到一个抽象类中而实现的4个任务中只有很少的任务可以将模板方法模式应用于上述场景。 将其余任务的实现留给抽象类的子类。 所以上面的实现时 /*** Abstract Workflow system*/ abstract class WorkflowManager2{public void doTask1(){System.out.println(Doing Task1...);}public abstract void doTask2();public abstract void doTask3();public void doTask4(){System.out.println(Doing Task4...);} }/*** One of the extensions of the abstract workflow system*/ class WorkflowManager2Impl1 extends WorkflowManager2{Overridepublic void doTask2(){System.out.println(Doing Task2.1...);}Override public void doTask3(){System.out.println(Doing Task3.1...);} }/*** Other extension of the abstract workflow system*/ class WorkflowManager2Impl2 extends WorkflowManager2{Overridepublic void doTask2(){System.out.println(Doing Task2.2...);}Override public void doTask3(){System.out.println(Doing Task3.2...);} } 让我继续说明如何使用这些工作流程实现 public class TemplateMethodPattern {public static void main(String[] args) {initiateWorkFlow(new WorkflowManager2Impl1());initiateWorkFlow(new WorkflowManager2Impl2());}static void initiateWorkFlow(WorkflowManager2 workflowMgr){System.out.println(Starting the workflow ... the old way);workflowMgr.doTask1();workflowMgr.doTask2();workflowMgr.doTask3();workflowMgr.doTask4();} } 和输出将是.. Starting the workflow ... the old way Doing Task1... Doing Task2.1... Doing Task3.1... Doing Task4... Starting the workflow ... the old way Doing Task1... Doing Task2.2... Doing Task3.2... Doing Task4... 到目前为止一切都很好。 但是本文的主要目的不是创建有关Template Method模式的另一篇博客文章而是了解如何利用Java 8 Lambda Expression和Default Methods 。 我之前已经写过只有具有单一抽象方法的接口才能被编写为lambda表达式。 在此示例中这意味着在四个任务中WorkflowManager2只能包含一个抽象/可自定义任务。 因此限制为一种抽象方法是一个主要限制可能不适用于许多实时方案。 我不希望重复相同的旧Template Method模式示例而我写这篇文章的主要目的是说明在用单个抽象方法处理抽象类的情况下如何利用lambda表达式和默认方法。 如果您想知道Java中的这些lambda表达式以及Java中的这些默认方法是什么意思那么在继续之前请花一些时间来阅读有关lambda表达式和默认方法的信息 。 我们将使用具有默认方法的接口来代替抽象类因此我们的工作流系统将如下所示 interface WorkflowManager{public default void doTask1(){System.out.println(Doing Task1...);}public void doTask2();public default void doTask3(){System.out.println(Doing Task3...);}public default void doTask4(){System.out.println(Doing Task4...);} } 现在我们有了带有可自定义Task2的工作流系统我们将继续使用Lambda表达式启动一些自定义工作流… public class TemplateMethodPatternLambda {public static void main(String[] args) {/*** Using lambda expression to create different * implementation of the abstract workflow*/initiateWorkFlow(()-System.out.println(Doing Task2.1...));initiateWorkFlow(()-System.out.println(Doing Task2.2...));initiateWorkFlow(()-System.out.println(Doing Task2.3...));}static void initiateWorkFlow(WorkflowManager workflowMgr){System.out.println(Starting the workflow ...);workflowMgr.doTask1();workflowMgr.doTask2();workflowMgr.doTask3();workflowMgr.doTask4();} } 这是可以在模板方法模式中利用lambda表达式的一种小方法 参考 模板方法模式–使用Lambda表达式来自JCG合作伙伴 Mohamed Sanaulla的默认方法来自Experiences Unlimited博客。 翻译自: https://www.javacodegeeks.com/2013/05/template-method-pattern-using-lambda-expressions-default-methods.html
http://www.yutouwan.com/news/31206/

相关文章:

  • 怎么用APdiv做网站导航栏网站开发用户自定义排序方案
  • 网站升级维护期间能访问吗wordpress 微博】
  • 山东省城乡住房和城乡建设厅网站疏肝益阳胶囊有哪些功效与作用
  • 上海免费模板建站山东省工程建设协会网站
  • 有没有专门做老年婚介的网站哈尔滨建筑工程招聘信息
  • 购物类网站开发中国国家人才培训网官网
  • 网站开发流程百度文库wordpress网站数量管理插件
  • 网站关键词排名没有了商务软文写作
  • 杭州哪里找网站建设的兼职襄阳住房和城乡建设局网站首页
  • 重庆做腋臭骑士网站百度域名是什么
  • wordpress 注册 填写密码错误沈阳seo自然优化排名
  • 网站中图片怎么做的连云港做网站公司哪家好
  • wordpress网站设置关键词网站专题页设计
  • 网站还未被收录可以做推广吗潍坊网站建设维护
  • 人们做网站怎么赚钱1元建站
  • 24小时学会网站建设wordpress修改mysql
  • 网站seo文章该怎么写全球最大的外贸平台
  • 手机网站制作哪家好城乡住房建设部网站
  • 在线制作wap网站永久建站平台
  • 宽屏大气网站模板广州智迅网络做网站
  • 如何套用别人网站模板南通高端网站
  • 做鞋子有什么好网站网站开发人员晋升体系
  • wordpress添加账户余额怎么做优化网站排名
  • 网站策划书注意事项东莞网站的制作设计
  • 响应式网站开发视频教程保定网站网站建设
  • 仿win8 网站模版建设电子商务网站的必要性
  • 平面设计有哪些公司优化营商环境发言稿
  • 自建网站 支付宝高端企业网站模板
  • 中宁建设局网站wordpress红色主题公园
  • 网站关键词多少个合适浅析我国门户网站建设不足