在java中,为回调创建回调接口是必需的吗?

在java中,为回调创建回调接口是必需的吗?,java,android,callback,Java,Android,Callback,在某些语言中,可以将函数(回调)传递给函数foo,并让函数foo调用回调函数 在android、java世界中,我看到了创建回调类并传递回调类实例的教程 我当然可以使用它,但定义回调接口类并传递它更麻烦 每次我需要使用回调功能时,是否必须定义自定义回调接口 是否有我至少可以使用的预定义回调接口 **编辑** 是否有一些预定义的PredefinedCallback我可以使用 fooClass.fooMethod(new PredfinedCallback() { public void onC

在某些语言中,可以将函数(回调)传递给函数foo,并让函数foo调用回调函数

在android、java世界中,我看到了创建回调类并传递回调类实例的教程

我当然可以使用它,但定义回调接口类并传递它更麻烦

每次我需要使用回调功能时,是否必须定义自定义回调接口

是否有我至少可以使用的预定义回调接口

**编辑**

是否有一些预定义的
PredefinedCallback
我可以使用

fooClass.fooMethod(new PredfinedCallback() {
  public void onComplete(JsonObject result) {
  };
})


void fooMethod(PredefinedCallback callback) {
  onSomeAsyncWorkComplete(
      callback.onComplete(result);
  );
}
Ion的
FutureCallback
似乎是我可以使用的一种好形式。

虽然我不知道如何在代码中使用FutureCallback而不是ion请求的回调。

在JVM语言中,回调是作为接口(通常)或抽象类(很少)的方法调用实现的;没有独立于对象的自由浮动函数。(函数类型库通常使用单个方法(如
apply
)定义接口
Function
,然后可以像其他任何对象一样传递
Function
对象。)


Java 7(Android中最新版本)之后的Java没有提供任何方便的功能来实现回调。您可能对使用感兴趣,它支持使用闭包(内联函数)作为回调函数的实现。

定义“轻松”。反射方法有什么问题吗?我突然想到,可能有一个函数在java中传递,就像在其他语言中一样。。我想不是:(我编辑了一点op。如果你可以有预定义的回调,它会是什么样子?在我看来,java的回调(实际上是接口模式)无法与其他回调(特别是javascript的回调)相比。但是你可以定义你的公共接口供各种类使用。它是免费的,取决于你的使用情况。