【发布时间】:2019-07-16 21:22:17
【问题描述】:
我的接口定义如下:
interface OnItemClickDelegate<T: Entity> {
fun onItemClick(entity: T?)
}
现在我在不同的类中匿名定义了我的接口:
var itemClickDelegate = object : OnItemClickDelegate<Derived> {
override fun onItemClick(entity: Derived?) {
doSomethingWith(entity)
}
}
这编译得很好,但是当我把它切换到:
var itemClickDelegate = OnItemClickDelegate<Derived> { entity -> doSomethingWith(entity) }
我收到一个编译器错误提示:
Interface OnItemClickDelegate does not have constructors
如何用简短的符号写我的声明?
【问题讨论】: