簡體   English   中英

是否可以使用Kotlin val(屬性)覆蓋Java getter(方法)?

[英]Is it possible to override Java getter (method) with Kotlin val (property)?

例如:

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; } Java字節碼中的public int getSomething() { return 2; }

這似乎是一個已知的問題在這里 顯然,這是一件復雜的事情,不太可能很快解決。

安德烈·布雷斯拉夫(Andrey Breslav)對這個問題的最初回應是:

不幸的是,這是一個相當深的問題。 我們不太可能以您想要的方式使其發揮作用

在問題頁面的更下方,您可以看到它在多平台項目方面變得更加復雜。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM