android中的第二个活动可以访问公共静态变量吗?

Pus*_*tal 0 android

我在android工作.我的项目有两个活动.我在一个活动中声明了一个公共静态变量,如下所示:

public static String name="KUNTAL";
Run Code Online (Sandbox Code Playgroud)

在我的第二个活动中,我试图使用此变量,然后生成此名称变量不存在的错误.

如果它被声明为公共,我可以在我的项目中的任何地方使用变量吗?

请告诉我我做了什么错误.

先感谢您...

Kri*_*ndu 12

public class Activity1 extends Activity {

    public static String name="KUNTAL";  //declare static variable. 

    @Override
    public void onCreate(Bundle savedInstanceState) {

    }
}

public class Activity2 extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
         Activity1.name; //way to access static variable using dot operator.
    }
}
Run Code Online (Sandbox Code Playgroud)

  • @CQM:如果静态变量也是`final`(确实/永远不会改变),肯定没有性能问题,因为编译器已经插入了*value*而不是对变量的引用.如果它只是"静态"而不是"最终",那么它仍然不会成为性能问题,因为它将被视为类似于来自其他语言的"全局变量". (3认同)

Lau*_*nt' 6

我认为你必须以"静态方式"访问它们,即:

String myVar= name; // wrong
String myVar= TheClassThatContainsName.name; // right
Run Code Online (Sandbox Code Playgroud)