_123_Java_创建线程的两种方式
-
Thread类
/*
* 创建多线程的第一种方式:继承java.lang.Thread类.
*
* */
public class _001_TestThread {
public static void main(String[] args) {
//创建一个子对象
_001_TestThread.SubThread subThread = new _001_TestThread.SubThread();
//启动线程,一个线程只能启动一次。
subThread.start();
//subThread.start(); //抛出异常,因为该线程已经被启动了
for(int i=0;i<=100;i++) {
System.out.println(Thread.currentThread().getName()+" "+i);
}
}
//InnerClass
private static class SubThread extends Thread{
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<=100;i++) {
System.out.println(Thread.currentThread().getName()+" "+i);
}
}
}
}
---------------------------
/*
* 创建多线程的第二种方式:实现java.lang.Runnable.
*
* */
public class _001_TestThread {
public static void main(String[] args) {
//创建一个子对象
_001_TestThread.SubThread subThread = new _001_TestThread.SubThread();
Thread thread=new Thread(subThread);
//启动线程
thread.start();
for(int i=0;i<=100;i++) {
System.out.println(Thread.currentThread().getName()+" "+i);
}
}
//InnerClass
private static class SubThread implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<=100;i++) {
System.out.println(Thread.currentThread().getName()+" "+i);
}
}
}
}
-------------------------------
-
线程的调度
-
继承方式和实现方式的联系与区别