【Java开源代码栏目提醒】:网学会员在Java开源代码频道为大家收集整理了TextThreadDaemon.java提供大家参考,希望对大家有所帮助!
package com.zf.s14;//创建一个包
class FatherThread extends Thread {//操作守护线程的类
public void run() {
System.out.println("遇到危险时,父亲是否被保护 ? " + this.isDaemon());
System.out.println("在危险时,父亲要保护儿子");
Thread child = new ChildThread();
child.setDaemon(true); //设置子类为守护线程
child.start();//启动线程
try {
Thread.sleep(1000);//休眠1秒
} catch (InterruptedException e) {//捕获唤醒异常
System.out.println("唤醒异常:"+e.getMessage());
} finally {//内容总执行
System.out.println("在危险时,父亲没有被保护,但要保护儿子");
}
System.out.println("父亲爱儿子...");
}
}
class ChildThread extends Thread {
public void run() {
System.out.println("儿子是否被保护?" + this.isDaemon());
System.out.println("一共有几个儿子");
int i = 0;
try {
while (i < 5) {//进行5次循环
System.out.println("儿子" + i++);
Thread.sleep(200);//休眠0.2秒
}
} catch (InterruptedException e) {//捕获唤醒异常
System.out.println("唤醒异常:"+e.getMessage());
} finally {//内容总执行
System.out.println("父亲己经把儿子保护好了...");
}
System.out.println("危险结束");
}
}
public class TextThreadDaemon {//操作守护线程的类
public static void main(String[] args) {//java
程序主入口处
Thread father = new FatherThread();// 默认情况下父类是普通线程
father.start();// 启动父类线程
try {
Thread.sleep(500);
} catch (InterruptedException e) {//捕获唤醒异常
System.out.println("唤醒异常:"+e.getMessage());
}
}
}