package edu.mama.ls18.homework;
    _/*
    裁判:负责输出双方奔跑距离、判断胜负
    */
    _public class JudgeRunnable implements Runnable{
    private Race race;
    Thread athlete1, athlete2;
    public JudgeRunnable(Race race,Thread athlete1, Thread athlete2) {
    if (race == null || athlete1==null || athlete2==null) {
    throw new IllegalArgumentException(“参数不能为null”);
    }
    this.race = race;
    this.athlete1=athlete1;
    this.athlete2=athlete2;
    }

    1. @Override<br /> public void run() {<br /> //开始<br /> race.isPlaying=true;<br /> System._out_.println("裁判:比赛开始!!!");<br /> athlete1.start();<br /> athlete2.start();<br /> try {<br /> Thread._sleep_(1000);<br /> } catch (InterruptedException e) {<br /> e.printStackTrace();<br /> }<br /> //进行<br /> while (race.isPlaying){<br /> if(race.hareDistance>=50)<br /> {<br /> race.isPlaying=false;<br /> race.winner="兔子";<br /> break;<br /> }<br /> if(race.tortoiseDistance>=50)<br /> {<br /> race.isPlaying=false;<br /> race.winner="乌龟";<br /> break;<br /> }<br /> System._out_.println("裁判:兔子已跑"+race.hareDistance);<br /> System._out_.println("裁判:乌龟已跑"+race.tortoiseDistance);<br /> try {<br /> Thread._sleep_(1000);<br /> } catch (InterruptedException e) {<br /> e.printStackTrace();<br /> }<br /> }<br /> //结束<br /> System._out_.println("裁判:比赛结束!胜利者是:"+race.winner);<br /> }

    }