Java 回调 callback

作者: 专职跑龙套 | 来源:发表于2017-01-19 11:31 被阅读77次
  • 调用者 Caller 实现一个接口 Callback
  • 调用者 Caller 通过构造方法传入一个 被调用者 ToBeCalled 对象
  • 调用者 Caller 调用 ToBeCalled 对象的具体方法,传入自身的对应引用
  • 被调用者 ToBeCalled 对象在完成具体方法后,调用 Caller 对象的回调方法 callback

示例如下:

public class Callback_Test {
    public static void main(String[] args) {
        Caller caller = new Caller(new ToBeCalled());
        caller.askQuesion();
    }
}

interface Callback {
    public void callback(Object obj);
}

class Caller implements Callback {
    private ToBeCalled tb;

    public Caller(ToBeCalled tb) {
        this.tb = tb;
    }

    // 异步回调
    public void askQuesion() {
        new Thread() {
            public void run() {
                System.out.println("提出问题");
                tb.answer(Caller.this);
            }
        }.start();
    }

    public void callback(Object obj) {
        System.out.println("得到答案:" + obj);
    }
}

class ToBeCalled {
    // 计算过程
    public void answer(Callback cb) {
        System.out.println("计算结果");
        int result = 10;

        cb.callback(result);
    }
}

相关文章

  • 回调callback

    title: 回调callback 参考: JAVA回调机制(CallBack)详解一个经典例子让你彻彻底底理解j...

  • Java 回调 callback

    调用者 Caller 实现一个接口 Callback 调用者 Caller 通过构造方法传入一个 被调用者 ToB...

  • Java 回调(callback)

    回调回调,是huitiao还是huidiao呢?哈哈,用输入法反正都打得出来。关于Java回调这个概念看了几...

  • 将CallBack改写成Promise

    CallBack回调函数是js的特色之一, 但CallBack回调方法, 非常容易造成回调地狱(callback ...

  • Callback、Promise、async/await

    一、Callback回调函数例子: callback函数应用举例: 就是通过callback回调函数来传回数据 缺...

  • Java回调(callback)机制

    回调的核心:回调方将本身即 this 传递给调用方,这样调用方就可以在调用完毕之后告诉回调方想要知道的信息。 一、...

  • 回调

    1. 同步回调 Callback Server Client 运行结果 2. 异步回调 Callback同上 Se...

  • 回调(callback)

    回调(callback)就是讲一段可执行的代码和一个特定的事件绑定起来。当特定的事件发生时,就会执行这段代码。Ob...

  • 回调Callback

    回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其...

  • 回调--CallBack

    回调是一个编程技巧,用于解决顺序流程无法解决或者说使用顺序流程来解决会十分麻烦的问题 比如: 场景一:在打游戏的时...

网友评论

    本文标题:Java 回调 callback

    本文链接:https://www.haomeiwen.com/subject/iwcibttx.html