我试图从另一个类访问主类中的变量。我不知道是否可能,但我需要这些变量。如果有办法请告诉我。这是一个简单的例子。
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();
......
}
然后我想在另一个实现runnable(thread)的类中使用这个变量“status”。如果状态为“y”,则运行方法中的特定代码块(if / else)将执行。
任何人都指出我如何调用主类,以便我可以从我的跑步者类中访问变量状态。感谢。
答案 0 :(得分:2)
班级status
中的字段A
是公开的和静态的,因此您可以随时随地拨打电话。
public class B {
public void myMethod() {
System.out.println("A's status is " + A.status);
}
}
术语上的一点:A
这里是一个表示对象的类。 main
恰好是该班级A
内的一种方法。因此,您要说status
属于A
,而不属于main
。
答案 1 :(得分:0)
没有java传递值而不是通过引用传递。您可以按照我链接的示例进行操作,看看是否有帮助。link您可以将其设置为静态,并且可以使用它,但是当您执行任何操作时,对它的任何操作都会改变静态的。