您的位置:首页 > 编程语言 > Java开发

Java多线程(二)、启动一个线程的3种方式

2013-05-19 14:49 591 查看
package org.study.thread;

/**
* 启动一个线程的3种方式
*/
public class TraditionalThread {

public static void main(String[] args) {
// 1. 继承自Thread类(这里使用的是匿名类)
new Thread(){
@Override
public void run() {
while(true) {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("threadName: " + Thread.currentThread().getName());
}
};
}.start();

// 2. 实现Runnable接口(这里使用的是匿名类)
new Thread(new Runnable() {
@Override
public void run() {
while(true) {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("threadName: " + Thread.currentThread().getName());
}
}
}).start();

// 3.即实现Runnable接口,也继承Thread类,并重写run方法
new Thread(new Runnable() {
@Override
public void run() {	// 实现Runnable接口
while(true) {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("implements Runnable thread: " + Thread.currentThread().getName());
}
}
}) {	// 继承Thread类
@Override
public void run() {
while(true) {
try {
Thread.sleep(500);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("extends Thread thread: " + Thread.currentThread().getName());
}
}
}.start();
}
}


执行结果:

threadName: Thread-0

threadName: Thread-1

extends Thread thread: Thread-2

threadName: Thread-1

threadName: Thread-0

extends Thread thread: Thread-2

threadName: Thread-1

threadName: Thread-0

extends Thread thread: Thread-2

。。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: