Kotlin 修饰符';覆盖';不适用于';getter';
我在代码中有类似的东西Kotlin 修饰符';覆盖';不适用于';getter';,kotlin,Kotlin,我在代码中有类似的东西 var barCode: BarCode? = null 现在在接口中定义了getBarCode(),然后我得到一个错误,这可能是一个意外的覆盖。不幸的是,这不起作用: var barCode: BarCode? = null override get 我可以这样做: private var barCode: BarCode? = null override fun getBarCode(): BarCode? = barCode fun setBarCode(ba
var barCode: BarCode? = null
现在在接口中定义了getBarCode(),然后我得到一个错误,这可能是一个意外的覆盖。不幸的是,这不起作用:
var barCode: BarCode? = null
override get
我可以这样做:
private var barCode: BarCode? = null
override fun getBarCode(): BarCode? = barCode
fun setBarCode(barCode: BarCode) {
this.barCode = barCode
}
但对于kotlin来说,这看起来像是一种很多人都喜欢的方式,而且内容冗长——必须有一种更短的方式——特别是从kotlin 1.0开始,这个模式将在这个类中重复多次,没有更短的方式了:Java接口中的方法
getBarCode()
需要通过kotlin中名为getBarCode()
的方法来实现,不是由名为条形码的属性创建的
有人请求用属性重写Java方法;您可以投票支持它以获得更新通知。并且界面不受您的控制?您不能将接口中的方法转换为属性?接口是Java的,谢谢您提供详细信息!