setDaemon(true); 设置它为守护线程使用 public final boolean isDaemon(){ return false; } 这算重写了父类的函数不冲突吧isDaemon()的返回值我昨天看Thinking in java时候也很混乱,我给你页码你自己领会下 英文第四版 813页
我想问的是你的类是怎么实现的,如果是继承自Thread的话肯定是编译不通过的,因为Thread中的isDaemon()是final的,要是不是继承自Thread,也就是下面这样: class Test { public final boolean isDaemon() { return false; } Thread t = new Thread();//当然你创建的Thread对象可能还传了别的参数 t.setDaemon(true); System.out.println(t.isDeamon());//这里调的是Thread中的isDaemon()而不是你写的isDaemon() t.start(); }有一点要提醒的是setDaemon()不要在start()后调用
设置它为守护线程使用
public final boolean isDaemon(){
return false;
}
这算重写了父类的函数不冲突吧isDaemon()的返回值我昨天看Thinking in java时候也很混乱,我给你页码你自己领会下
英文第四版 813页
混乱的是有关isInterupt()和interupt(),抱歉哈、
class Test {
public final boolean isDaemon() {
return false;
} Thread t = new Thread();//当然你创建的Thread对象可能还传了别的参数
t.setDaemon(true);
System.out.println(t.isDeamon());//这里调的是Thread中的isDaemon()而不是你写的isDaemon()
t.start();
}有一点要提醒的是setDaemon()不要在start()后调用