问答详情
源自:2-4 Java线程-隋唐演义实战开发---军队

跟老师一样敲,为啥我这代码就错了呢?

public class Stage extends Thread{

   public void run(){

       ArmyRunnable armyTaskOfSuiDynasty=new ArmyRunnable();
       ArmyRunnable armyTaskOfRevolt=new ArmyRunnable();

       //使用Runnable接口创建线程
       Thread armyOfSuiDynasty=new Thread(armyTaskOfSuiDynasty,"隋军");
       Thread armyOfRevolt=new Thread(armyTaskOfRevolt,"农民起义军");

       //启动线程,让军队开始作战
       armyOfSuiDynasty.start();
       armyOfRevolt.start();

       //舞台线程休眠,大家专心观看军队厮杀
       try{
           Thread.sleep(50);
       }catch(InterruptedException e){
           e.printStackTrace();
       }

       armyTaskOfSuiDynasty.keepRunning=false;
       armyTaskOfRevolt.keepRunning=false;

       try{
       armyOfRevolt.join();
   }catch(InterruptedException e){
           e.printStackTrace();
       }

   public static void main(String[] args){
       new Stage().start();
   }

}

提问者:moummm 2017-02-12 21:34

个回答

  • 阿非利加
    2017-02-13 10:30:24
    已采纳

    Stage类下应该有两个方法 一个  Run() 一个main()方法  这两个方法应该都在Stage下面, 你的都写在了run()里面,

    简单来说 你在  public static void main(String[] args){}

    这个main方法的上面 加一个 } 就好了