java线程调用sleep()问题,下面例子,为什么主方法那 Thread.sleep(),要写Thread?这为啥指主线程,
答案:2 悬赏:10 手机版
解决时间 2021-04-14 01:00
- 提问者网友:心牵心
- 2021-04-13 13:31
java线程调用sleep()问题,下面例子,为什么主方法那 Thread.sleep(),要写Thread?这为啥指主线程,
最佳答案
- 五星知识达人网友:山河有幸埋战骨
- 2021-04-13 14:04
sleep(1000) 前面没有加类名或者对象名,表示默认当前对象的方法,当前就是一个Thread所以可以不写,也可以写成this.sleep(1000)追问那,为什么主方法那 Thread.sleep(),要写Thread?这为啥指主线程,而且不写不行?追答运行程序肯定有一个主线程的,要让主线程休眠就使用Thread.sleep(),你不写就表明调用当前类的sleep(),如果当前类不是一个线程类就会报错。。
全部回答
- 1楼网友:酒安江南
- 2021-04-13 15:29
你好,很高兴为你解答。
sleep方法是Thread类的静态方法。
MyThread 中sleep前不用写Thread。是因为MyThread 继承了Thread类。
而TestInterrupt与Thread类无任何关系,所以必须使用Thread.sleep()追问如果要写是写继承的方法是MyThread.sleep()还是Thread.sleep()追答其实你在MyThread 类中调用 sleep(1000)等价于调用Thread.sleep(1000),也等价于MyThread.sleep(1000)。只不过可以省略类名。
sleep方法是Thread类的静态方法。
MyThread 中sleep前不用写Thread。是因为MyThread 继承了Thread类。
而TestInterrupt与Thread类无任何关系,所以必须使用Thread.sleep()追问如果要写是写继承的方法是MyThread.sleep()还是Thread.sleep()追答其实你在MyThread 类中调用 sleep(1000)等价于调用Thread.sleep(1000),也等价于MyThread.sleep(1000)。只不过可以省略类名。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯