isDaemon()
软件包java.lang.Thread.isDaemon()中提供了此方法。
此方法用于检查当前线程是否是守护程序线程。
守护程序线程是在后台运行的线程。
此方法不是静态的,因此我们也无法使用类名访问此方法。
此方法是最终方法,我们不能在子类中覆盖此方法。
此方法的返回类型为boolean,因此如果线程为守护程序,则返回true;如果线程为用户线程,则返回false。
语法:
final boolean isDaemon(){ }
参数:
在Thread方法中,我们不传递任何对象作为参数。
返回值:
此方法的返回类型为boolean,如果此线程为守护程序,则返回true,否则返回false。
isDaemon()
方法示例/* We will use Thread class methods so we are importing the package but it is not mandate because it is imported by default */ import java.lang.Thread; class IsThreadDaemon extends Thread { //run()Thread类的重写方法 public void run() { //检查守护程序线程的代码 if (Thread.currentThread().isDaemon()) { //显示守护程序线程代码 System.out.println("Is thread " + getName() + "daemon?" + Thread.currentThread().isDaemon()); } else { System.out.println("Not a Daemon thread" + getName()); } } public static void main(String[] args) { //创建类IsThreadDaemon的三个对象 IsThreadDaemon td1 = new IsThreadDaemon(); IsThreadDaemon td2 = new IsThreadDaemon(); IsThreadDaemon td3 = new IsThreadDaemon(); //td2是由setDaemon(true)方法设置的守护程序线程 td2.setDaemon(true); //通过使用start()方法,我们将开始执行线程 td1.start(); td2.start(); td3.start(); } }
输出结果
E:\Programs>javac IsThreadDaemon.java E:\Programs>java IsThreadDaemon Not a Daemon threadThread-0 Not a Daemon threadThread-2 Is thread Thread-1daemon?true