是否有可能用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字节码。

这似乎是一个已知的问题。 显然这是一件复杂的事情,不可能很快得到解决。

关于安德烈·布雷斯拉夫问题的原始答复:

不幸的是,这是一个相当深刻的问题。 我们不可能按照你喜欢的方式工作

进一步在问题页面上,您可以看到,在多平台项目方面它变得更加复杂。