Java多線程之初體驗

在Java中要想實現多線程,有兩種方式,一種是繼承Thread類,另一種是實現Runable接口。java

方法一:多線程

經過Thread實現多線程ide

package multiThread;

/**
 * 繼承Thread類實現多線程
 *
 * @author Leizhi 2016/5/18
 * @see
 * @since 1.0
 */
public class MultiThreadExtendsThread extends Thread
{

	@Override
	public void run()
	{
		/**
		 * 要實現的多線程代碼
		 */
		System.out.println("This multiThread is extends from Thread");
	}

}

方法二:操作系統

實現Runable接口實現多線程線程

package multiThread;

/**
 * 實現Runable接口實現多線程
 *
 * @author Leizhi 2016/5/19
 * @see
 * @since 1.0
 */
public class MultiThreadImpRunnable implements Runnable
{
	@Override
	public void run()
	{
		System.out.println("This multiThread is implements from Runnable...");
	}
}
使用多線程
package multiThread;

/**
 * 使用多線程
 *
 * @author Leizhi 2016/5/19
 * @see
 * @since 1.0
 */
public class UseMultiThread
{
	public static void main(String[] args)
	{
		/*繼承Thread類的線程運行*/
		MultiThreadExtendsThread multiThreadExtendsThread = new MultiThreadExtendsThread();
		multiThreadExtendsThread.start();

		/*實現Runable接口線程運行*/
		MultiThreadImpRunnable multiThreadImpRunnable = new MultiThreadImpRunnable();
		new Thread(multiThreadImpRunnable).start();
	}
}

運行效果截圖code

Thread和Runnable的區別
若是一個類繼承Thread,則不適合資源共享。可是若是實現了Runable接口的話,則很容易的實現資源共享。
實現Runnable接口比繼承Thread類所具備的優點:
一、適合多個相同的程序代碼的線程去處理同一個資源
二、能夠避免java中的單繼承的限制
三、增長程序的健壯性,代碼能夠被多個線程共享,代碼和數據獨立。繼承

注意:接口

main方法其實也是一個線程。在java中因此的線程都是同時啓動的,至於何時,哪一個先執行,徹底看誰先獲得CPU的資源。在java中,每次程序運行至少啓動2個線程。一個是main線程,一個是垃圾收集線程。由於每當使用java命令執行一個類的時候,實際上都會啓動一個JVM,每個jVM實習在就是在操做系統中啓動了一個進程。進程

相關文章
相關標籤/搜索