真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Java中如何創(chuàng)建線程

Java中如何創(chuàng)建線程,相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。

創(chuàng)新互聯(lián)2013年開創(chuàng)至今,先為謝家集等服務(wù)建站,謝家集等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為謝家集企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

Java實(shí)現(xiàn)并啟動(dòng)線程有兩種方法

1、寫一個(gè)類繼承自Thread類,重寫run方法。用start方法啟動(dòng)線程2、寫一個(gè)類實(shí)現(xiàn)Runnable接口,實(shí)現(xiàn)run方法。用new Thread(Runnable target).start()方法來啟動(dòng)

注意:start方法不是立即執(zhí)行多線程,而是使得該線程變?yōu)榫途w態(tài)(Runnable)

1.通過擴(kuò)展Thread類來創(chuàng)建線程

(1)定義Thread類的子類,并重寫該類的run方法,該run方法的方法體就代表了線程要完成的任務(wù)。因此把run()方法稱為執(zhí)行體。

(2)創(chuàng)建Thread子類的實(shí)例,即創(chuàng)建了線程對(duì)象。

(3)調(diào)用線程對(duì)象的start()方法來啟動(dòng)該線程。

public class MutliThreadDemo {  public static void main(String[] args) {        //創(chuàng)建Thread子類的實(shí)例,即創(chuàng)建了線程對(duì)象    MutliTread mt1 = new MutliTread("Thread");          //不立即執(zhí)行多線程代碼,而是使得該線程變?yōu)榫途w態(tài)(Runnable)    mt1.start();  }  }//通過擴(kuò)展Thread類來創(chuàng)建線程class MutliTread extends Thread{    public MutliTread(String name) {    this.setName(name);    //或super(name)  }  public void run() {    for(int i = 0; i < 10; i++) {      System.out.println(Thread.currentThread().getName() + ":" + i);    }    }}

2.通過Runnable接口創(chuàng)建線程

(1)定義runnable接口的實(shí)現(xiàn)類,并實(shí)現(xiàn)該接口的run()方法,該run()方法的方法體同樣是該線程的線程執(zhí)行體。

(2)創(chuàng)建 Runnable實(shí)現(xiàn)類的實(shí)例,并依此實(shí)例作為Thread的target來創(chuàng)建Thread對(duì)象,該Thread對(duì)象才是真正的線程對(duì)象。

(3)調(diào)用線程對(duì)象的start()方法來啟動(dòng)該線程。

public class MutliThreadDemo3 {    public static void main(String[] args) {         //創(chuàng)建一個(gè)Runnable接口實(shí)現(xiàn)類    MutliTread3 m = new MutliTread3();        //實(shí)例化線程對(duì)象    Thread t1 = new Thread(m, "甲");    Thread t2 = new Thread(m, "乙");    Thread t3 = new Thread(m, "丙");    t1.start();    t2.start();    t3.start();  }  }class MutliTread3 implements Runnable{    public void run() {    for(int i = 0; i < 10; i++) {      System.out.println(Thread.currentThread().getName() + ":" + i);    }    }}

當(dāng)然第二種方法也可通過匿名內(nèi)部類或lambda表達(dá)式實(shí)現(xiàn),會(huì)更簡(jiǎn)潔。以下通過Lambda表達(dá)式實(shí)現(xiàn)run方法:

public class MutliThreadDemo3 {    public static void main(String[] args) {        Runnable r = () -> {        for(int i = 0; i < 10; i++) {        System.out.println(Thread.currentThread().getName() + ":" + i);      }      };        //實(shí)例化線程對(duì)象    Thread t1 = new Thread(r, "甲");    Thread t2 = new Thread(r, "乙");    Thread t3 = new Thread(r, "丙");    t1.start();    t2.start();    t3.start();  }  }

注:以上三種方式(本質(zhì)上是兩種)創(chuàng)建的三個(gè)線程其實(shí)是互相獨(dú)立的

看完上述內(nèi)容,你們掌握J(rèn)ava中如何創(chuàng)建線程的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!


分享標(biāo)題:Java中如何創(chuàng)建線程
URL地址:http://weahome.cn/article/pdgecj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部