使用Java中的接口进行回调

对于事件驱动的编程,我们将传递给函数的引用,该函数将在事件发生时被调用。此机制称为回调。Java不支持函数指针。因此我们不能实现相同的方向。但是使用接口,我们可以很容易地实现相同的目的。

在下面的示例中,单击按钮时我们进行了回调。参见步骤-

  • 使用单个方法创建接口ClickEventHandler handleClick()

  • 创建一个实现此接口ClickEventHandler的ClickHandler类。

  • 创建一个Button类,在单击click方法时将调用ClickHandler。

  • 测试应用程序。

示例

//Step 1: Create an interface for the callback method

interface ClickEventHandler {

   public void handleClick();

}

//步骤2:创建一个回调处理程序

//实现上述接口

class ClickHandler implements ClickEventHandler {

   public void handleClick() {

      System.out.println("Clicked");

   }

}

//步骤3:建立事件产生器类别

class Button {

   public void onClick(ClickEventHandler clickHandler) {

      clickHandler.handleClick();

   }

}

public class Tester {

   public static void main(String[] args) {

      Button button = new Button();

      ClickHandler clickHandler = new ClickHandler();

      //传递clickHandler进行默认操作

      button.onClick(clickHandler);

      Button button1 = new Button();

      //传递接口以实现自己的操作

      button1.onClick(new ClickEventHandler() {

         @Override

         public void handleClick() {

            System.out.println("Button Clicked");

         }

      });

   }

}

输出结果

Clicked Button

Clicked

以上是 使用Java中的接口进行回调 的全部内容, 来源链接: utcz.com/z/356160.html

回到顶部