回調實現_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 回調實現

回調實現

 2014/11/2 21:25:49  極樂道人  程序员俱乐部  我要评论(0)
  • 摘要:定義:在计算机程序设计中,回调函数,或简称回调(Callback即callthenback被主函数调用运算后会返回主函数),是指通过函数参数传递到其它代码的,某一块可执行代码的引用。Java實現:回调可以用传递抽象类或接口来模拟。回调的接收者会调用抽象类或接口的方法,这些方法由调用者提供实现。这样的对象通常是一些回调函数的集合,同时可能包含它所需要的数据。这种方法在实现某些设计模式时比较有用,例如访问者模式,观察者模式与策略模式。例子:packagecom.my.callback
  • 标签:

class="MsoNormal">定義:

在计算机程序设计中,回调函数,或简称回调(Callback call then back 被主函数调用运算后会返回主函数),是指通过函数参数传递到其它代码的,某一块可执行代码的引用。

?

Java實現:

回调可以用传递抽象类或接口来模拟。回调的接收者会调用抽象类接口的方法,这些方法由调用者提供实现。这样的对象通常是一些回调函数的集合,同时可能包含它所需要的数据。这种方法在实现某些设计模式时比较有用,例如访问者模式,观察者模式与策略模式。

?

?

例子

?

package com.my.callback;
/**
 * @author Jack 2014-10-29 上午08:35:50
 * 回調接口,定義回調的方法
 */
//public class MyCallBack {
//
//	void func(){};
//}

//public abstract class MyCallBack {
//
//	void func(){};
//}

public interface MyCallBack {

	void func();
}

?

package com.my.callback;
/**
 * @author Jack 2014-10-29 上午08:41:50
 *
 */
public class CallerTest {

	public static void main(String[] args) {
		Caller caller = new Caller();
		caller.setMyCallBack(new MyCallBack() {
			@Override
			//由調用者自定義實現方法
			public void func() {
				System.out.println("我被調用");
			}
		});
		caller.doCall();
	}
}

?

package com.my.callback;
/**
 * @author Jack 2014-10-29 上午08:39:42
 *
 */
public class Caller {

	private MyCallBack myCallBack;
	
	public void setMyCallBack(MyCallBack myCallBack) {
		this.myCallBack = myCallBack;
	}
	
	public void doCall() {
		this.myCallBack.func();
	}
}

?運行結果

我被調用

?

?

?

上一篇: Lambda表达式图解 下一篇: 没有下一篇了!
  • 相关文章
发表评论
用户名: 匿名