java中多線程的兩種創建方式


一丶繼承Thread類實現多線程

第一步:繼承Thread類
第二步:重寫run()方法
第三步:創建繼承了Thread類的對象 , 調用start()方法啟動。
//線程創建方式一 :
/*
第一步:繼承Thread類
第二步:重寫run()方法
第三步:創建繼承了Thread類的對象 , 調用start()方法啟動。
 */
public class TestThread extends Thread{
    @Override
    public void run() {
        for (int i = 0; i < 3000; i++) {
            System.out.println("愛你三千遍");
        }
    }

    public static void main(String[] args) {
        TestThread testThread = new TestThread();
         testThread.start();
    }

}

二丶實現Runnable接口創建多線程

第一步:實現runnable接口
第二步:沖寫run方法
第三步:創建實現類對象,創建代理類thread類對象 +start()方法啟動線程
public class Thread_Study implements Runnable{
/*
* 第一步:實現runnable接口
* 第二步:沖寫run方法
* 第三步:創建實現類對象,創建代理類thread類對象 +start()方法啟動線程
*
* */

    @Override
    public void run() {
        for (int i = 0; i < 100; i++) {
            System.out.println("看書");
        }
    }

    public static void main(String[] args) {
        Thread_Study ts = new Thread_Study();
        new Thread(ts).start();
        for (int i = 0; i < 100; i++) {
            System.out.println("敲代碼");
        }

    }


}

運行結果:

敲代碼
敲代碼
敲代碼
敲代碼
敲代碼
敲代碼
敲代碼
敲代碼
看書
看書
看書
看書
看書
看書
看書

結論:

我們可以觀察到敲代碼和看書同時進行每個線程之間是不相互干涉的,各自執行各自的,這和調用方法不同,調用方法是等到上一個步驟執行完成才可以在執行下一個步驟.

 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM