Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/337.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要在Java类中使用此方法(Kotlin)_Java_Kotlin - Fatal编程技术网

需要在Java类中使用此方法(Kotlin)

需要在Java类中使用此方法(Kotlin),java,kotlin,Java,Kotlin,我在为这个苦苦挣扎。我在Kotlin中有一个声明了这个方法的类,我需要在Java类中使用“onSuccess”,我不知道怎么做 科特林班: open class Callback<T>(val app: NetworkApplication) : retrofit2.Callback<T> { private var isSuccessful = false var onSuccess: ((T?) -> Unit)? = null var onSuccessWi

我在为这个苦苦挣扎。我在Kotlin中有一个声明了这个方法的类,我需要在Java类中使用“onSuccess”,我不知道怎么做

科特林班:

open class Callback<T>(val app: NetworkApplication) : retrofit2.Callback<T> {

private var isSuccessful = false
var onSuccess: ((T?) -> Unit)? = null
var onSuccessWithHeaders: ((T?, HashMap<String, String>) -> Unit)? = null
var onNetworkError: (() -> Unit)? = null
var onServerError: ((String?, String?) -> Unit)? = null
var onFinish: ((Boolean?) -> Unit)? = null
var onUnauthorized: (() -> Unit) = {
但是我必须在那里放一个参数,我不知道该写什么。

,它与java中的SAM转换相同

您可以这样定义/设置它:

entidadesHabilitadasCallback.setOnSuccess();
entidadesHabilitadasCallback.setOnSuccess(it->{
//使用它,做点什么
返回Unit.INSTANCE;
});

谢谢!成功了。我必须将项目目标设置为Java1.8,因为它在Java1.7上,我不能使用lambdas。
private Callback<String> entidadesHabilitadasCallback = new Callback<String>((NetworkApplication)this);
entidadesHabilitadasCallback.setOnSuccess();