一.继承Thread类创建线程
为创建一个线程,最简单的方法就是从Thread类继承。这个类包含了创建和运行线程所需的一切东西。Thread类最重要的方法是run(),但为了使用run(),必须对其进行重写。因此,run()属于那些会与程序中的其他线程“并发”或“同时”执行的代码。下面的例子是继承Thread类的一个简单实现。
java程序如下:
public class SimpleThread extends Thread { private int countDown = 5; private int threadNumber; private static int threadCount = 0; /** * 为每个线程分配一个编号 */ public SimpleThread() { threadNumber = ++threadCount; System.out.println("Making Thread" + threadNumber); } /** * 从5到1进行计数 */ @Override public void run() { while (true) { System.out.println("Thread" + threadNumber + ":" + countDown); if (--countDown == 0) { return; } } } public static void main(String[] args) { for (int i = 0; i < 5; i++) { new SimpleThread().start(); } } }
执行结果如下:
Making Thread1
Making Thread2
Making Thread3
Making Thread4
Making Thread5
Thread3:5
Thread3:4
Thread3:3
Thread3:2
Thread1:5
Thread3:1
Thread1:4
Thread1:3
Thread1:2
Thread1:1
Thread4:5
Thread4:4
Thread4:3
Thread4:2
Thread5:5
Thread5:4
Thread5:3
Thread5:2
Thread5:1
Thread2:5
Thread2:4
Thread2:3
Thread2:2
Thread2:1
Thread4:1
在main()方法中,可看到创建并运行了大量线程。Thread包含了一个特殊的方法叫做start(),它的作用是对线程进行特殊的初始化,然后调用run()。如果不调用start(),线程便永远不会启动。
原文:http://www.cnblogs.com/minisculestep/p/4983083.html