是否有可能用Kotlin val(property)重写Java getter(method)?
例如:
Java的:
public class Foo { public int getSomething() { return 1; } }
科特林:
class Bar : Foo() { // works override fun getSomething() = 2 // doesn't work ('something' overrides nothing) // override val something = 2 }
我认为val something = 2
将被转换为public int getSomething() { return 2; }
public int getSomething() { return 2; }
在Java字节码。
这似乎是一个已知的问题。 显然这是一件复杂的事情,不可能很快得到解决。
关于安德烈·布雷斯拉夫问题的原始答复:
不幸的是,这是一个相当深刻的问题。 我们不可能按照你喜欢的方式工作
进一步在问题页面上,您可以看到,在多平台项目方面它变得更加复杂。