我正在参加「启航方案」


简介

Java 中,回调是指在一个办法履行结束后,将另一个办法作为参数传递给该办法,并在该办法履行的特定时刻调用该办法。回调能够用于完成异步操作、事情处理、错误处理等场景。
回调通常是经过接口完成的。接口能够界说一个或多个回调办法,这些办法能够在需求时由调用者完成并传递给被调用者。在履行特定任务时,被调用者能够调用传递的回调办法,以便与调用者交互。、

使用办法

下面咱们将经过使用接口的办法,在 Java 中使用回调。

创立回调接口

首要,咱们需求创立一个回调接口。该接口应该界说一切需求在回调期间履行的办法。

例如,下面是一个简单的回调接口示例:

public interface Callback {
    void onSuccess(Object result);
    void onFailure(Exception e);
}

该接口包含两个回调办法,一个用于成功,一个用于失利

完成回调接口

接下来,需求完成回调接口。

通常,需求在调用者中完成回调接口,以便将完成传递给被调用者。如下:

public class CallbackImpl implements Callback {
    @Override
    public void onSuccess(Object result) {
        System.out.println("Success: " + result);
    }
    @Override
    public void onFailure(Exception e) {
        System.err.println("Error: " + e.getMessage());
    }
}

在上面的示例中,完成了回调接口 onSuccessonFailure 偏重写了接口中界说的两个办法。

调用回调

一旦创立了回调接口并完成了它,就能够将回调目标传递给需求使用它的办法。例如:

public class Caller {
    public void doSomething(Callback callback) {
        try {
            // 履行某些操作
            callback.onSuccess("操作成功");
        } catch (Exception e) {
            callback.onFailure(e);
        }
    }
}
public class Main {
    public static void main(String[] args) {
        Caller caller = new Caller();
        Callback callback = new CallbackImpl();
        caller.doSomething(callback);
    }
}

在这个比如中,Caller 类有一个 doSomething 办法,该办法履行某些操作,假如操作成功,则调用回调的 onSuccess 办法,不然调用回调的 onFailure 办法。在 Main 类中,创立了一个 Caller 目标和一个 CallbackImpl 目标,并将 CallbackImpl 目标传递给 CallerdoSomething 办法。

总结

总归,回调是一种在 Java 中完成异步编程和事情处理的常用办法。经过界说和完成回调接口,能够使代码愈加灵敏和可重用。Java回调是一种重要的实战技巧,能够应用于事情监听器、定时任务、数据库操作、多线程编程等多种场景。