请各位JAVA编程高手帮我个忙。我编的一个程序出现错误。但不知道错那里了。请你们指正。

2024-12-22 14:14:20
推荐回答(2个)
回答1:

//错误已改正
public class exmm {
public static void main(String agrs[]) {
new frame();
}
}
class frame implements Runnable {
Thread student=new Thread(this);
Thread teacher=new Thread(this);
frame(){
student.start();
teacher.start();
}
public void run() {
if(Thread.currentThread()==student){
try{
System.out.println("张三正在睡觉不听课");
Thread.sleep(1000*60*60);
}
catch(InterruptedException e){
System.out.println("张三被老师吵醒");
}
System.out.println("张三开始听课");
}
else
if(Thread.currentThread()==teacher){
try {
System.out.println("上课!");
Thread.sleep(500);
}
catch(InterruptedException e){}
student.interrupt();
}
}
}
//运行结果
run:
张三正在睡觉不听课
上课!
张三被老师吵醒
张三开始听课
成功生成(总时间:0 秒)

回答2:

1 类名首字母请大写
2 student.start();
teacher.start();
这怎么能写类里? 写方法里
3 需求不明确。