簡體   English   中英

無法訪問 Java 子類中父 Kotlin 類的受保護成員變量

[英]Not able to access protected member variable of Parent Kotlin class in Java child class

abstract class Parent {

    protected var name : String

}

class Child extends Parent {

    private void childMethod() {
         name = "child";
    }
}

在 Child 類中,它給了我錯誤名稱在 xxxChild 中具有私有訪問權限(xxx 是包名稱)

在java子類中,我們可以通過getName()訪問parent的protected成員變量。 就像 getter 方法是自動生成的。 我是 Kotlin 的新手,需要深入了解該方法是如何自動生成的。

如果您想從 Java 中將其作為字段訪問,您應該使用@JvmField注釋 Kotlin 屬性。 請注意,根據該鏈接,您只能使用@JvmField注釋一個屬性,如果它有一個支持字段,不是私有的,沒有openoverrideconst修飾符,並且不是委托屬性(這些都不適用這里,所以你沒事)。

暫無
暫無

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

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