在Kotlin中,有一种方法可以定义一个带注释的类,该类实现比以下内容短的功能接口:
@Foo
class Bar : Runnable {
override fun run() = ...
}
我希望找到类似以下组合语法的内容:
@Foo
fun Bar : Runnable () = ...
由于互操作性的原因,我必须以实现@Foo
的带有Runnable
的类或以@Foo
实现的Runnable
的类的实例结束。
答案 0 :(得分:2)
我想最短的语法是这样:
@Foo object: Runnable {
override fun run() {}
}
如果您annotate lambdas,则注释将应用于invoke
函数,而不是实现的类。