我试图从另一个类访问主类中的变量。我不知道是否可能,但我需要这些变量。如果有办法,请告诉我。这是一个简单的例子。
public class A(){
public static String status;
public static void main(String [] args){
Scanner s = new Scanner(System.in);
System.out.println("Deadlock or no deadlock (y/n)");
status = s.nextline();
......
}
然后我想在另一个实现可运行线程的类中使用这个变量"status"。如果status为"y",则run方法中的特定代码块(If/else)将执行。
有人告诉我如何调用主类,这样我就可以从我的跑步者类访问变量状态。谢谢。
A
类中的字段status
是公共的和静态的,因此您可以在任何您喜欢的地方调用它。
public class B {
public void myMethod() {
System.out.println("A's status is " + A.status);
}
}
关于术语的一点:这里的A
是一个类,它代表一个对象。main
恰好是该类A
中的一个方法。所以你会说status
属于A
,而不是main
。
没有java是通过值传递而不是通过引用传递的。你可以按照我链接的例子,看看是否有帮助。你可以把它设置成静态的,这样它就可以使用了,但是当你对它进行任何操作时,它的任何操作都会发生变化,因此是静态的。