Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.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
Kotlin 如何实例化实现java接口的对象?(即,2个lambda)_Kotlin - Fatal编程技术网

Kotlin 如何实例化实现java接口的对象?(即,2个lambda)

Kotlin 如何实例化实现java接口的对象?(即,2个lambda),kotlin,Kotlin,我有这个Java接口: public interface MetronomeCallback { void onTick(boolean tickValue); void onBPM(int bpm); } public void setMetronomeCallback(MetronomeCallback metronomeCallback) { this.metronomeCallback = metronomeCallback; } 这是java中的一个lamb

我有这个Java接口:

public interface MetronomeCallback {
    void onTick(boolean tickValue);
    void onBPM(int bpm);
}

public void setMetronomeCallback(MetronomeCallback metronomeCallback) {
    this.metronomeCallback = metronomeCallback;
}
这是java中的一个lambda函数,我应该将一个对象传递给实现这2个函数的
setMetronomeCallback

我想以内联方式实现它,如下所示:

       val metronomeCallback = MainService.MetronomeCallback {
            fun onTick(value: Boolean) {

            }

            fun onBPM(bpm: Int) {

            }
        }

        s.setMetronomeCallback(metronomeCallback);

如何创建实现这两个功能的对象?

当您知道:要创建实现某个接口的对象,您可以使用
object:interface{…}

因此,在本例中,我认为您只需要在接口名称之前插入
对象:

(您可以类似地扩展一个类;您只需要在类名之后添加paren和任何构造函数参数。您还可以通过用逗号分隔多个接口/类来继承它们。)

这方面的技术术语是对象表达式;这都是我的解释