次のように、インターフェイスをパラメータとして渡します。
_class Test {
fun main() {
test({})
// how can I pass here?
}
fun test(handler: Handler) {
// do something
}
interface Handler {
fun onCompleted()
}
}
_
Javaではtest(new Handler() { .......... })
のような無名関数を使用できますが、Kotlinではできません。誰でもこれを行う方法を知っていますか?
Kotlinでは次のことができます。
test(object: Handler {
override fun onComplete() {
}
})
または、同じ方法でプロパティを作成します。
val handler = object: Handler {
override fun onComplete() {
}
}
そして、コードのどこかに:test(handler)
MyInterface testJava = context.getBean("myBean", MyInterface.class);
val test: MyInterface = context.getBean("myBean") as MyInterface
GL