后台线程 为什么在 1 那里初始化t1就不是后台线程而在 2 那里初始化是后台线程呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我先解释一下 为什么在 2 的位置生成的线程是后台线程。因为DaemonTest本身是继承了Thread ,也就是说 DaemonTest 是一个线程。在DaemonTest的构造方法里调用了setDaemon(true); ,是将DaemonTest 这个线程对象设置为后台线程了。然后调用了start(); ,去执行run 方法,在run方法里生成了一个新的线程对象,然后将t1指向了它。由后台线程生成的线程默认还是后台线程。所以输出为true。再解释下 为什么在 1 的位置生成的线程就不是后台线程。首先main方法被执行,这本身就是一个线程,而这个线程不是后台线程。main方法执行 new DaemonTest(); ,在DaemonTest的构造方法里,执行t1=new Thread(); ,生成一个线程,这个是main方法的那个线程生成的新线程,所以默认的还是非后台线程。 电子邮件@后域名如何才能知道正确地址? JAVA简单环境变量的问题! 请问如何在程序中设定heap 最大值,以代替命令行方式java -Xmx128m ...... 救命啊!大家谁知道在JAVA中如何判断当前时间是不是整点啊!急!先谢谢了! java中不同的工程怎么样才能共享同一块内存? 在JB里面,如何添加数组的Add Watch java.awt.Container的setLayout方法有什么用途? 有没有JAVA操作注册表的例子啊 急求帮助!!四道难度不大的程序题!谢谢!!! 进来一下吧 用JDBC如何获得刚刚插入记录的主键值(自动生成) 请教一个thread问题。。。很奇怪。
因为DaemonTest本身是继承了Thread ,
也就是说 DaemonTest 是一个线程。
在DaemonTest的构造方法里调用了setDaemon(true); ,
是将DaemonTest 这个线程对象设置为后台线程了。然后调用了start(); ,
去执行run 方法,
在run方法里生成了一个新的线程对象,然后将t1指向了它。
由后台线程生成的线程默认还是后台线程。
所以输出为true。再解释下 为什么在 1 的位置生成的线程就不是后台线程。
首先main方法被执行,这本身就是一个线程,而这个线程不是后台线程。
main方法执行 new DaemonTest(); ,在DaemonTest的构造方法里,
执行t1=new Thread(); ,生成一个线程,
这个是main方法的那个线程生成的新线程,
所以默认的还是非后台线程。