Thread类run()方法和start()方法区别
2014-03-14 22:40
218 查看
run()方法是Runnable接口的一个方法,可以多次重复实现调用;
start()方法是Thread的一个线程启动方法,一个线程不能重复启动,顾线程未结束时只能调用一次;
package demo;
public void main(String[] args) {
Demo demoThread = new Demo();
//1,直接调用Demo的run方法在主线程main中执行,输出0到9执行完毕main线程结束
//2,调用demoThread.start(),由于demoThread线程没有结束,main会等待其结束,同样输出0到9结果
//3,demoThread.setDaemon(true);,demoThread.start(),main线程顺序执行结束,由于demoThread是后台守护线程,并不一定完全输出0到9,main一旦结束demoThread就结束
}
class Demo extends Thread {
public void run() {
for(int i = 0;i < 10; i++) {
System.out.println(i);
}
}
}
start()方法是Thread的一个线程启动方法,一个线程不能重复启动,顾线程未结束时只能调用一次;
package demo;
public void main(String[] args) {
Demo demoThread = new Demo();
//1,直接调用Demo的run方法在主线程main中执行,输出0到9执行完毕main线程结束
//2,调用demoThread.start(),由于demoThread线程没有结束,main会等待其结束,同样输出0到9结果
//3,demoThread.setDaemon(true);,demoThread.start(),main线程顺序执行结束,由于demoThread是后台守护线程,并不一定完全输出0到9,main一旦结束demoThread就结束
}
class Demo extends Thread {
public void run() {
for(int i = 0;i < 10; i++) {
System.out.println(i);
}
}
}
相关文章推荐
- R语言读入数据
- 企业基本户和一般户
- BCTF总结
- json前后台传值 推荐
- 第一章作业
- java垃圾收集器(GC)浅析
- PAT 1016. Phone Bills (25) 【15/25】
- HashSet与HashMap的区别
- 写给中产阶层的几条投资理财建议
- php获取远程图片并保存本地
- 在Windows上将Apache Portable Runtime (APR)编译为DLL
- Java 中正确使用 hashCode 和 equals 方法
- 电话号码归属查询
- Prime Palindromes(USACO Gateway)的判定
- TCP为什么需要3次握手与4次挥手
- SRV Resource Records
- 开源python项目Sikuli
- Odp.net 动态创建变量in
- leveldb系列一(安装篇)
- 面向对象基础(2)--抽象类 接口 集合 泛型