当前位置: 首页 > 编程笔记 >

Java Thread类的最终boolean isDaemon()方法(带示例)

刘曾琪
2023-03-14
本文向大家介绍Java Thread类的最终boolean isDaemon()方法(带示例),包括了Java Thread类的最终boolean isDaemon()方法(带示例)的使用技巧和注意事项,需要的朋友参考一下

线程类最终布尔 isDaemon()

  • 软件包java.lang.Thread.isDaemon()中提供了此方法。

  • 此方法用于检查当前线程是否是守护程序线程。

  • 守护程序线程是在后台运行的线程。

  • 此方法不是静态的,因此我们也无法使用类名访问此方法。

  • 此方法是最终方法,我们不能在子类中覆盖此方法。

  • 此方法的返回类型为boolean,因此如果线程为守护程序,则返回true;如果线程为用户线程,则返回false。

语法:

    final boolean isDaemon(){
    }

参数

在Thread方法中,我们不传递任何对象作为参数。

返回值:

此方法的返回类型为boolean,如果此线程为守护程序,则返回true,否则返回false。

Java程序演示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
 类似资料:
  • 问题内容: 我的问题很简单: 编译器是否将final类中的所有方法都视为final本身?将关键字添加到最终类中的方法是否有效果? 我知道最终方法更有可能被内联,这就是我要问的原因。 提前致谢。 问题答案: 没错,final类中的所有方法都隐式为final。 看这里: “请注意,您也可以将整个类声明为final。声明为final的类不能被子类化。例如,在创建不可变类(如String类)时,这特别有用

  • 我写JUnit测试有困难。问题是在下面的代码块中有最后一个方法: 是一个,它扩展了,后者是一个抽象类。 是中的最后一个方法。 这是我的Test类的浓缩版本: 我使用PowerMockito,因为我知道Mockito不能存根final方法。 我得到的错误是 在区域设置“EN_US”的代码“CONSTANT_STRING”下找不到消息。 看起来我的...实际上并没有被用作正在被调用。我尝试将添加到我创

  • 本文向大家介绍Java File类的long getFreeSpace()方法(带示例),包括了Java File类的long getFreeSpace()方法(带示例)的使用技巧和注意事项,需要的朋友参考一下 文件类long 软件包java.io.File.getFreeSpace()中提供了此方法。 此方法用于返回未分配空间的大小(以字节为单位的空间),如果路径存在且路径不存在,则以文件路径名

  • 我目前正在学习继承,对于在超类中声明一个方法final应用于子类的限制,我有点困惑。假设我有一个具有取款方法的超类BankAccount,它需要用户密码和金额才能取款,并将帐户余额设置为(balance - amount)。我希望将该方法声明为final,这样其他子类就不会潜在地覆盖它,并允许客户端在不改变帐户余额的情况下取款。 我想避免这样的事情被允许: 然而,有些银行账户允许透支,在提款时也必

  • 本文向大家介绍Java File类boolean createNewFile()方法(带示例),包括了Java File类boolean createNewFile()方法(带示例)的使用技巧和注意事项,需要的朋友参考一下 文件类布尔 软件包java.io.File.createNewFile()中提供了此方法。 此方法用于通过使用方法创建新文件,并且该方法可通过File对象访问。 如果文件已经存

  • 本文向大家介绍Java File类boolean delete()方法(带示例),包括了Java File类boolean delete()方法(带示例)的使用技巧和注意事项,需要的朋友参考一下 文件类布尔 软件包java.io.File.delete()中提供了此方法。 此方法用于通过使用方法删除文件或目录,并且可以通过File对象访问此方法。 此方法的返回类型为Boolean,即返回true或