国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Java > 正文

JAVA多線程Thread和Runnable的實現

2019-11-26 16:13:51
字體:
來源:轉載
供稿:網友

java中只允許單一繼承,但允許實現多個接口,因此第二種方法更靈活。

復制代碼 代碼如下:

/**
     * 運行繼承java.lang.Thread類定義的線程
     */
    public void startOne() {
        // 創建實例
        OneThread oneThread = new OneThread();
        // 啟動線程ThreadA
        oneThread.startThreadA();
        try {
            // 設置線程休眠1秒
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        // 停止線程,此處為什么不用stop()方法,因為該方法已經廢棄,但可以用在死鎖。
        oneThread.stopThreadA();
    }

復制代碼 代碼如下:

/**
     * 運行實現Runnable接口定義的線程
     */
    public void startTwo() {
        // 創建實例
        Runnable runnable = new TwoThread();
        // 將實例放入到線程中
        Thread threadB = new Thread(runnable);
        // 啟動線程
        threadB.start();
    }

復制代碼 代碼如下:

// 繼承Thread類定義線程
class OneThread extends Thread {
    private boolean running = false;

    public void start() {
        this.running = true;
        super.start();
    }
    public void run() {
        int i = 0;
        try {
            while (running) {
                System.out.println("繼承Thread類定義線程程序體......" + i++);
                Thread.sleep(200);
            }
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
    public void startThreadA() {
        System.out.println("啟動繼承Thread類定義線程");
        this.start();
    }
    public void stopThreadA() {
        System.out.println("關閉繼承Thread類定義線程");
        this.running = false;
    }
}

復制代碼 代碼如下:

// 實現Runnable接口定義線程
class TwoThread implements Runnable {
    private Date runDate;

    public void run() {
        System.out.println("實現Runnable接口定義線程程序體......");
        this.runDate = new Date();
        System.out.println("線程啟動時間......" + runDate);
    }

復制代碼 代碼如下:

public static void main(String[] args) {
        // 實例化對象
        ThreadStartAndStop threadStartAndStop = new ThreadStartAndStop();
        threadStartAndStop.startOne();
        threadStartAndStop.startTwo();
    }

 啟動繼承Thread類定義線程
繼承Thread類定義線程程序體......0
繼承Thread類定義線程程序體......1
繼承Thread類定義線程程序體......2
繼承Thread類定義線程程序體......3
繼承Thread類定義線程程序體......4
關閉繼承Thread類定義線程
實現Runnable接口定義線程程序體......
線程啟動時間......Fri Mar 15 12:56:57 CST 2013

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 汶上县| 镇雄县| 遵化市| 成安县| 成都市| 酉阳| 琼海市| 靖安县| 犍为县| 建昌县| 靖西县| 贡觉县| 花莲县| 鸡西市| 湖州市| 巴林右旗| 文登市| 临颍县| 沅陵县| 普安县| 胶南市| 华亭县| 湟中县| 象州县| 定日县| 潜山县| 靖边县| 东丰县| 健康| 方山县| 如东县| 上杭县| 泗水县| 东港市| 彰化县| 通城县| 怀来县| 云安县| 石渠县| 顺义区| 敦化市|