java多线程模拟龟兔赛跑程序调试总出现主函数异常错误

liuxinchen136 2012-04-16 09:45:37
我的程序:请帮忙改改
import java.io.*;
class Rabbit extends Thread{
Tortoise tor;
int Journey;
int RabbitSpeed;
public Rabbit(int rs,int j,Tortoise tortoise){
Journey=j;
RabbitSpeed=rs;
tor=tortoise;
}
synchronized public void run(){{
try{
wait(1000);
}
catch(InterruptedException e1){
e1.printStackTrace();
}
notifyAll();
}
System.out.println(".....兔子气跑了....");
while(Journey>=0)
{ System.out.println("兔子在跑");
Journey=Journey-RabbitSpeed;
if(Journey%7==0){
try{
System.out.println("兔子在睡觉......");
sleep(20);
}
catch(InterruptedException e){
e.printStackTrace();
}

}
}
if(Journey<0){
System.out.println("兔子到了终点");
}
}
class Tortoise extends Thread{
int Journey;
int TortoiseSpeed;
Rabbit rab;
public Tortoise(int ts,int j,Rabbit rabbit){
Journey=j;
TortoiseSpeed=ts;
rab=rabbit;
}
synchronized public void run(){
{
try{
wait(1000);
}
catch(InterruptedException e){
e.printStackTrace();
}
notifyAll();
}
System.out.println("....龟龟气跑了....");
while(Journey>=0)
{ System.out.println("龟龟在跑");
Journey=Journey-TortoiseSpeed;
}
if(Journey<0){
System.out.println("龟龟到了终点");
}
}
class TortoiseAndRabbit1 extends Thread{
int Journey;
int r;
int t;
Rabbit Rab;
Tortoise Tor;
public TortoiseAndRabbit1(int rs,int ts,int j)
{ Journey=j;
r=rs;
t=ts;
}
public void run()
{ Rab=new Rabbit(r,Journey,Tor);
Tor=new Tortoise(t,Journey,Rab);
Rab.setPriority(Thread.MAX_PRIORITY);
Tor.setPriority(Thread.MAX_PRIORITY);
Rab.start();
Tor.start();
}
}
public class TortoiseAndRabbit {
public void main(String[] args){
try{
new TortoiseAndRabbit1(6,2,100).start();
}
catch(Exception e){e.printStackTrace(System.err);
}
...全文
211 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

50,528

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧