无法访问某些其他活动类中的静态变量

时间:2019-09-26 15:48:34

标签: java android kotlin

我有一个活动MainACtivity.kt,并且创建了一个如下所示的随播对象来创建静态变量。

   companion object {
        var myStr:String?= null
    } 

现在我想在某项活动中使用myStr,但其说法是myStr has private access

我正在按以下方式访问它。

class SecondActivity: BaseActivity{

 MainActivity.myStr // myStr has private access

}

1 个答案:

答案 0 :(得分:1)

错误消息非常清楚,显示为Execting member declaration。 实际声明成员后,它就可以正常工作:

class MainActivity() {
    companion object {
        var myStr: String? = null
    }
}

class SecondActivity {
    val notPrivate = MainActivity.myStr

    //otherwise you can declare a function to access myStr. It just does not work directly inside a class or a file. 
    fun bar(){
        MainActivity.myStr = "i'm not private either"
    }    
}