【发布时间】:2013-11-28 00:33:16
【问题描述】:
我在静态方法中声明和初始化一个变量。如何在另一个静态方法中使用此变量?我试图通过静态方法的名称来调用变量。
【问题讨论】:
-
向我们展示您的尝试,然后我们可以从那里开始。
-
您不能在一种方法中使用在另一种方法中声明的变量。
标签: java variables methods static
我在静态方法中声明和初始化一个变量。如何在另一个静态方法中使用此变量?我试图通过静态方法的名称来调用变量。
【问题讨论】:
标签: java variables methods static
如何使用在一个静态变量中声明和初始化的变量 方法并在另一个静态方法中使用它?
你不能。因为变量的作用域只属于声明的方法。
另一种方法是将variable 作为类变量,然后所有方法都可以使用这个variable。
public class Test {
private static int variable;
public static void method1(){
variable++;
}
public static void method2(){
variable--;
}
}
注意是否有多个线程访问这些方法。
【讨论】:
你不能,因为如果你在一个方法中声明这个变量是本地的,你必须声明为全局变量并在方法中初始化。
【讨论】:
您必须在方法之外拥有变量,并使其成为静态变量。
例如: 公共静态 int accessMeOutside = 0;
public static void methodOne(){
accessMeOutside = 1;
}
public static void methodTwo(){
if(accessMeOutside == 1)
accessMeOutside = 2;
}
如果你调用 methodOne,那么 methodTwo,accessMeOutside 最终会被正确设置为 2。
【讨论】: