/*
四個視窗同時賣票
因為是同時,所以使用多執行緒
建立4個執行緒,都是賣票
因為都是賣票,說明四個執行緒的任務是一樣的
只需要定義乙個類繼承thread
*/// 執行緒和執行緒任務是繫結在一起的
/*class ticket extends thread}}
}class test}*/
/*為了解決四個執行緒共享票的問題,使用靜態方法肯定是不行的
需要使用建立執行緒的第二種方式:
1、建立實現了runnable介面的子類
2、重寫runnable介面中的run方法
3、建立實現了runnable介面的子類的物件
4、建立thread類的物件,也就是在建立執行緒
5、把實現了runnable介面的子類物件作為引數傳遞給thread類的構造方法
把執行緒任務進行了描述,也就是物件導向
執行緒任務和執行緒物件的分離,執行緒執行什麼任務不再重要,只要是實現了runnable介面的子類物件
都可以作為引數傳遞給thread的構造方法
實現介面的同時,也可以繼承父類
*///下面用第二種方法建立執行緒,解決上述問題
//1、建立實現了runnable介面的子類,這是乙個描述執行緒任務的類
class ticket implements runnable}}
}class test
}
/*
為什麼建立執行緒的第二種方式可以解決賣票問題?
第一種建立執行緒的方式:執行緒和執行緒任務是繫結在一起的,建立4個執行緒就建立了4份資源
第二種建立執行緒的方式:執行緒和執行緒任務進行了分離,只需要建立乙個任務,讓4個執行緒分別去執行
*///thread類也實現了runnable介面,所以也可以這麼寫
/*class test extends thread*/
//但是不推薦上面的寫法
class
test
implements
runnable
class
test
}
Java 建立執行緒的兩種方式
package com.etc.demo class threaddemo extends thread 啟動執行緒 呼叫thread類的start 方法 package com.etc.demo public class testthread 執行結果 每次的執行結果可能不同 主線程在執行.1 繼...
java建立執行緒常用的兩種方式
一 繼承thread類建立執行緒類 1 定義thread類的子類,並重寫該類的run方法,該run方法的方法體就代 表了執行緒要完成的任務。因此把run 方法稱為執行體。2 建立thread子類的例項,即建立了執行緒物件。3 呼叫執行緒物件的start 方法來啟動該執行緒。二 通過runnable介...
執行緒建立的兩種方式
建立執行緒的兩種方式 1.繼承thread並重寫方法,在run方法中定義執行緒要執行的任務 class mythread extends thread public class threaddemo1 2.實現runable介面並重寫run方法 class myrunnable implements...