JAVA 回调实例

来源:互联网 发布:淘宝网上的汽车能买吗 编辑:程序博客网 时间:2024/05/15 12:39

自己写了一个例子演示JAVA中对耗时操作的回调通知,要求客户程序员实现抽象类Test中的回调接口onCompletion(),代码如下:

interface RequestListener{public void request(String action);public void onCompletion(String response);}abstract class Test implements RequestListener{@Overridepublic void request(final String action) {System.out.println("received request-->"+action);new Thread(new Runnable() {@Overridepublic void run() {try {Thread.sleep(10000);} catch (InterruptedException e) {e.printStackTrace();}onCompletion("requested work done=" + action);}}).start();System.out.println("request return...");}}public class AnyTest extends Test{@Overridepublic void onCompletion(String response) {System.out.println(response);}public void ownWork(){System.out.println("My own work...");}public static void main(String[] args){AnyTest at = new AnyTest();at.request("WORK1");at.ownWork();}}

输出:

received request-->WORK1
request return...
My own work...
requested work done=WORK1

8 0