Java中怎么通過繼承Thread類創(chuàng)建線程類,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比精河網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式精河網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋精河地區(qū)。費用合理售后完善,十年實體公司更值得信賴。一 點睛
通過繼承Thread類創(chuàng)建線程并啟動多線程的步驟:
1 定義Thread的子類,并重寫該類的run()方法,該run()方法的方法體代表了線程需要完成的任務(wù)。因此run()方法稱為線程執(zhí)行體。
2 創(chuàng)建Thread子類的實例,即創(chuàng)建子線程對象。
3 調(diào)用線程對象的start()方法來啟動該線程。
二 代碼
// 通過繼承Thread類來創(chuàng)建線程類public class FirstThread extends Thread{ private int i ; // 重寫run方法,run方法的方法體就是線程執(zhí)行體 public void run() { for ( ; i < 100 ; i++ ) { // 當(dāng)線程類繼承Thread類時,直接使用this即可獲取當(dāng)前線程 // Thread對象的getName()返回當(dāng)前該線程的名字 // 因此可以直接調(diào)用getName()方法返回當(dāng)前線程的名 System.out.println(getName() + " " + i); } } public static void main(String[] args) { for (int i = 0; i < 100; i++) { // 調(diào)用Thread的currentThread方法獲取當(dāng)前線程 System.out.println(Thread.currentThread().getName() + " " + i); if (i == 20) { // 創(chuàng)建、并啟動第一條線程 new FirstThread().start(); // 創(chuàng)建、并啟動第二條線程 new FirstThread().start(); } } }}
三 運行
......main 20main 21main 22Thread-0 0main 23Thread-1 0main 24Thread-0 1main 25Thread-1 1main 26Thread-0 2main 27Thread-1 2main 28......
四 說明
1 雖然程序只顯示地創(chuàng)建并啟動了2個線程,但實際上有3個線程,因為還有一個主線程。main()方法的方法體代表主線程的線程執(zhí)行體。
2 Thread-0和Thread-1兩個線程輸出的i變量不連續(xù)。這是因為每次創(chuàng)建線程對象都需要創(chuàng)建一個FirstThread對象,所以Thread-0和Thread-1不能共享該實例變量。
3 使用繼承Thread類的方法來創(chuàng)建線程時,多個線程之間無法共享線程類的實例變量。
看完上述內(nèi)容,你們掌握J(rèn)ava中怎么通過繼承Thread類創(chuàng)建線程類的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
文章名稱:Java中怎么通過繼承Thread類創(chuàng)建線程類-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://aaarwkj.com/article0/coceoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計、網(wǎng)站策劃、電子商務(wù)、企業(yè)網(wǎng)站制作、品牌網(wǎng)站設(shè)計、定制網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容