我正在使用Kotlin& MVP在一起,偶然发现了一点点烦恼。
我得到了"意外覆盖"错误(从下面可以看出)。除了在MainView界面中更改成员变量名称或getX()之外,是否有任何解决方案。
根据我的研究,没有办法阻止kotlin为x'生成吸气剂。
class MainActivity : Activity(), MainView {
val x: String // Accidental override
override fun getX(): String {
return x
}
}
interface MainView {
fun getX(): String
}
答案 0 :(得分:5)
您可以设置属性private
,以防止为其生成getter:
private val x: String = ""
或者,您可以将其设为简单的Java字段,而不是具有@JvmField
注释的属性:
@JvmField val x: String = ""