为什么回调方法用于多态

时间:2017-08-25 12:38:37

标签: java interface callback

我有一个回调界面。

public interface CallBack{
  void executeforConn();
}

abstract class CallbackImpl implements Callback {     
  void executeforConn(){
    executeStatements();
  }

  abstract void executeStatements();
}

在调用者中调用回调。

new CallbackImpl{
  @Override
  executeStatements(){
    //extend the method
  }
}

Callback callback = new CallbackImpl();
callback.executeforConn();

调用者调用回调方法的实现。我不明白为什么它被称为回调方法。我知道通过使用接口,您可以灵活地注册任何使用Caller实现CallBack的类。它不一定只是CallBackImpl。

1 个答案:

答案 0 :(得分:0)

  

我不明白为什么它被称为回调方法。

它被称为"回调"因为它允许你传递对象的方法"回调"你的代码。

有关回调的目的和用途的更详细说明,请阅读回调中的Wikipedia article

  

为什么回调方法用于多态

回调接口和(多个)实现可以被视为(相当无趣的) 多态的示例;例如一个Callback API,具有多个实现不同行为的实现。