您的位置:首页 > 编程语言 > Java开发

java回调机制

2016-07-09 10:16 399 查看
回调:一种双向调用模式,也就是说,被调用方在接口被调用时也会调用对方的接口;

比如,就是客户程序CLIENT调用服务程序SERVER中的某个函数SA(),然后SERVER又在某个时候反过来调用CLIENT中的某个函数mycallback(),对于CLIENT来说,这个mycallback便叫做回调函数。

一般说来,CLIENT不会自己调用mycallback,CLIENT提供mycallback的目的就是让SERVER来调用它,而且是CLIENT不得不提供。

 

1首先定义一个回调接口,以便 CLIENT和SERVER进行交互。 也就是 注册回调函数

public
interface MyCallBack {
    //执行回调操作的方法
    void execute();

}

2以下是Server端程序:

public
class Server
{

    /**如果要执行这个方法,必须提供回调接口*/
    public void testTime(MyCallBack
callBack)
{
       ...
       callBack.execute();
///进行回调操作
   }
}
3以下是client端程序:

    客户端必须实现规定的接口,被调用的对象才能回调本对象中的方法。

public
class Client implements MyCallBack{

    Server server
= new
Server();

    /**如果契约,必须定义一个规定的函数,以实现被调,回调函数必须符合接口规范
     * 这个方法,本对象一般不执行,只用于回调
    */
    public void
execute(){
        System.out.println("我被回调了");
    }
    /**将本对象以接口的方式传递过去,server处理完后执行接口中的方法,实现回调*/
    public void callServer(){
       server.testTime(this);
    }
}
public static
void main(String[] args)
{         Client client
= new Client();

        client.callServer();
}
 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: