/**
* 构造线程的2种方式,第三个线程是混合方式
*
* @author timeriver.wang
* @date Mar 10, 2014 3:11:05 PM
*/
public class TraditionThread {
public static void main( String[] args ) {
/**
* 也可以用匿名内部类(new 父类或接口),不一定非要extends
*/
Thread thread = new Thread() {
public void run() {
System.out.println( "1:" + Thread.currentThread() );
}
};
thread.start();
/**
* 这种方式体现面向对象的思想,线程对象,线程所运行代码封装成一个对象new Runnable
*/
Thread thread2 = new Thread( new Runnable() {
public void run() {
System.out.println( "2:" + Thread.currentThread() );
}
} );
thread2.start();
/**
* Thread的匿名内部子类有run方法,就覆盖父类的run方法,不执行父Thread类的run方法 Thread父类:public void run() {if (target != null)
* {target.run();}} 所以输出"3: Thread:",而不是"3: Runnable:"
*/
new Thread( new Runnable() {
public void run() {
System.out.println( "3: Runnable:" + Thread.currentThread() );
}
} ) {
public void run() {
System.out.println( "3: Thread:" + Thread.currentThread() );
}
}.start();
}
}