/**
* 1、定义类实现Runnable接口
* 2、覆盖接口中的run方法,将线程的任务代码封装到run方法中
* 3、通过Thread类创建对象,并将Runnable接口中的子类对象作为Thread类的构造函数的参数进行传递。为什么?因为线程的任务
* 都封装在Runnable接口子类对象run方法中,所以要在线程对象创建时就必须明确要运行的任务
* 4、调用线程对象的start方法开启线程
*/
package Thread;
/**
* Thread-0 0
Thread-1 0
Thread-0 1
Thread-1 1
Thread-1 2
Thread-0 2
Thread-1 3
Thread-0 3
Thread-1 4
Thread-0 4
*
*/
public class Thread_2 implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<5;i++){
System.out.println(Thread.currentThread().getName()+" "+i);
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
Thread_2 thread_2=new Thread_2();
Thread t1=new Thread(thread_2);
Thread t2=new Thread(thread_2);
t1.start();
t2.start();
}
}