class Daemon extends Thread f public void run0 if(this.isDaemon()=-=false) Systemout.println("thread is not daemon"): else System.ourprintln("thread is daemon") try for(int i=0;i<10;i++) System.our.println((): Thread.sleep(200); catch (InterruptedException e)System.outprintln("thread done!"); public class Test { public static void main (String ] args) Thread t=new Daemon0;t.setDaemon(true): t.start0; tryf Threadsleep(900): catch (InterruptedException e)System.out.println("main done!");
时间: 2024-01-12 17:05:28 浏览: 74
这段代码有一些问题,可以帮您指出:
1. 第一行代码应该是 `class Daemon extends Thread {`,缺少了左花括号。
2. 在 `run()` 方法中,`if(this.isDaemon()=-=false)` 应该是 `if (this.isDaemon() == false)` 或者更简洁地写作 `if (!this.isDaemon())`。
3. 在 `run()` 方法中,`Systemout` 应该是 `System.out`。
4. 在 `Test` 类中,`Thread t=new Daemon0;` 应该是 `Thread t = new Daemon();`,缺少了括号。
5. 在 `Test` 类中,`t.setDaemon(true):` 应该是 `t.setDaemon(true);`,缺少了分号。
6. 最后一行代码中,`f` 是什么意思?应该是 `catch (InterruptedException e) { System.out.println("main done!"); }`。
下面是修改后的代码:
```
class Daemon extends Thread {
public void run() {
if (!this.isDaemon()) {
System.out.println("thread is not daemon");
} else {
System.out.println("thread is daemon");
}
try {
for (int i = 0; i < 10; i++) {
System.out.println(i);
Thread.sleep(200);
}
} catch (InterruptedException e) {
System.out.println("thread done!");
}
}
}
public class Test {
public static void main(String[] args) {
Thread t = new Daemon();
t.setDaemon(true);
t.start();
try {
Thread.sleep(900);
} catch (InterruptedException e) {
System.out.println("main done!");
}
}
}
```
阅读全文