当前位置:  开发笔记 > 编程语言 > 正文

Kotlin:Java无法解决Kotlin Symbol?

如何解决《Kotlin:Java无法解决KotlinSymbol?》经验,为你挑选了1个好方法。

我有一个像下面的Kotlin代码,SingleKotlin.instance可以被其他Kotlin文件调用

class SingleKotlin private constructor(){
    companion object {
        val instance by lazy {
            SingleKotlin()
        }
    }

}

但是,当我尝试SingleKotlin.instance从java 调用时,它显示无法解析符号'instance'

我不明白为什么,任何人都可以探索,我该如何解决这个问题?



1> 小智..:

只需在字段上方添加@JvmStatic注释(如本文档中所述https://kotlinlang.org/docs/reference/java-to-kotlin-interop.html#static-fields)

所以,你的代码应该是这样的:

class SingleKotlin private constructor(){
    companion object {
        @JvmStatic
        val instance by lazy {
            SingleKotlin()
        }
    }
}

现在你可以这样称呼它

SingleKotlin.instance

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有