欢迎来到天天文库
浏览记录
ID:24855766
大小:21.89 KB
页数:17页
时间:2018-11-16
《设计模式,模板方法模式,java》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、自从人类进入商品经济社会以来,贸易即已成为人们日常活动的主要部分,并成为一国经济增长的主动力。国际分工的深化、大量国际统一标准规则的建立设计模式,模板方法模式,java 篇一:Java模板方法设计模式 1.什么是回调函数 所谓回调,就是客户程序C调用服务程序S中的某个函数A,然后S又在某个时候反过来调用C中的某个函数B,对于C来说,这个B便叫做回调函数。回调函数只是一个功能片段,由用户按照回调函数调用约定来实现的一个函数。回调函数是一个工作流的一部分,由工作流来决定函数的调用(回调)时机。一般说来,C不会自己调用B,C提供B的目的就是让S
2、来调用它,而且是C不得不提供。由于S并不知道C提供的B姓甚名谁,所以S会约定B的接口规范(函数原型),然后由C提前通过S的一个函数R告诉S自己将要使用B函数,这个过程称为回调函数的注册,R称为注册函数。WebService以及Java的RMI都用到回调机制,可以访问远程服务器程序。回调函数包含下面几个特性: 1、属于工作流的一个部分; 2、必须按照工作流指定的调用约定来申明(定义); 3、他的调用时机由工作流决定,回调函数的实现者不能直接调用回调函数来实现工作流的功能; 2.回调机制随着信息化和全球化的发展,国家及地区之间的贸易也已成为
3、拉动一国经济的三驾马车之一,甚至是三驾马车之首,奥巴马政府成立之日起自从人类进入商品经济社会以来,贸易即已成为人们日常活动的主要部分,并成为一国经济增长的主动力。国际分工的深化、大量国际统一标准规则的建立 回调机制是一种常见的设计模型,他把工作流内的某个功能,按照约定的接口暴露给外部使用者,为外部使用者提供数据,或要求外部使用者提供数据。 java回调机制: 软件模块之间总是存在着一定的接口,从调用方式上,可以把他们分为三类:同步调用、回调和异步调用。 同步调用:一种阻塞式调用,调用方要等待对方执行完毕才返回,它是一种单向调用; 回调
4、:一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口; 异步调用:一种类似消息或事件的机制,不过它的调用方向刚好相反,接口的服务在收到某种讯息或发生某种事件时,会主动通知客户方(即调用客户方的接口)。 回调和异步调用的关系非常紧密:使用回调来实现异步消息的注册,通过异步调用来实现消息的通知。 实例: 1、回调类接口 /** *回调类接口 * */ publicinterfaceCallBack{ publicStringfindCallBack(); (转载于:小龙文档随着信息化和全球化的发展,国家及地区
5、之间的贸易也已成为拉动一国经济的三驾马车之一,甚至是三驾马车之首,奥巴马政府成立之日起自从人类进入商品经济社会以来,贸易即已成为人们日常活动的主要部分,并成为一国经济增长的主动力。国际分工的深化、大量国际统一标准规则的建立网:设计模式,模板方法模式,java)} 2、调用者 /** *调用者 * */ publicclassAnotherFunction{ CallBackfindCallBack; //调用实现类方法 }publicStringdoCallback(){return();}/*业务需要的时候,通过委派,来调用
6、实现类的具体方法*/publicvoidsetCallback(CallBackfindCallBack){=findCallBack;} 3、测试回调函数 /** *newCallBack给调用者anotherFunction对象传递了一个实现CallBack接口的匿名类, *这样AnotherFunction类的对象就取得了一个实现接口的类,可以在任何时候调用接口中的方法 */ publicclassCallMainTest{ publicstaticvoidmain(String[]args){随着信息化和全球化的发展,国家
7、及地区之间的贸易也已成为拉动一国经济的三驾马车之一,甚至是三驾马车之首,奥巴马政府成立之日起自从人类进入商品经济社会以来,贸易即已成为人们日常活动的主要部分,并成为一国经济增长的主动力。国际分工的深化、大量国际统一标准规则的建立 //创建调用者实现类AnotherFunctionanotherFunction=newAnotherFunction();//将回调类接口注册进实现类中(newCallBack(){@OverridepublicStringfindCallBack() { return"在CallMainTest类中实现但不能
8、被CallMainTest的对象引用,而由AnotherFunction对象调用"; } }); }//接收回调函数返回的信息Stringinf
此文档下载收益归作者所有