2015-11-04 75 views
-3

我必须在主类中保留此server.start和server.stop代码,我还必须从shell脚本调用一个类,从而可以更改状态旗。 问题是每当我做的标志的状态没有改变在一个类和循环永远不会终止。我也尝试挥发性关键字与国旗,但没有任何好处。若要将变量从一种主要方法更改为另一种主要方法

public class A { 
    static boolean flag; 

    public static void main (String args){ 
    server.start() 
    waitforShutDown(); 
    server.stop() 
    } 

    public static void waitforShutDown() { 
    while(!flag) { 
     Thread.sleep(5000); 
    } 
    } 

    public static void shutDown() { 
    flag=true; 
    } 

} 

//from this class i wll call for shutDown() 

public class B { 

    public static void main (String args[]) { 
    new A().shutDown(); 
    } 
} 
+0

请格式化此代码。 – ergonaut

+0

没有正确缩进的代码很难阅读,所以请正确格式化(不要忘记将它放在代码示例中 - 编辑器菜单上的'{}'按钮)。也请问清楚具体的问题。 – Pshemo

+1

你认为'main'方法是或者做了什么?你为什么这么认为? –

回答

0

Java中的程序只能有一个主要方法。因此B类不会被执行。您可以考虑使用线程或实例化A类中的B类。

相关问题