在之前的章節(jié)中,我們都是假設(shè)程序中只有一條執(zhí)行流,程序從main方法的第一條語句逐條執(zhí)行直到結(jié)束。從本節(jié)開始,我們討論并發(fā),在程序中創(chuàng)建線程來啟動多條執(zhí)行流,并發(fā)和線程是一個復(fù)雜的話題,本節(jié),我們先來討論Java中線程的一些基本概念。
創(chuàng)建線程
線程表示一條單獨的執(zhí)行流,它有自己的程序執(zhí)行計數(shù)器,有自己的棧。下面,我們通過創(chuàng)建線程來對線程建立一個直觀感受,在Java中創(chuàng)建線程有兩種方式,一種是繼承Thread,另外一種是實現(xiàn)Runnable接口,我們先來看第一種。
繼承Thread
Java中java.lang.Thread這個類表示線程,一個類可以繼承Thread并重寫其run方法來實現(xiàn)一個線程,如下所示:
public class HelloThread extends Thread { @Override public void run() { System.out.println("hello"); } }
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式