Java 杂谈

创建线程的三种方式

2019-02-28  本文已影响0人  无敌锤子棒棒鸡
1.继承 Thread
public class MyThread extends Thread { 
    @Override
    public void run() {
        // TODO: 2019/2/28  
    }
}
2.实现 Runnable
public class MyThread implements Runnable {
    @Override
    public void run() {
        // TODO: 2019/2/28
    }
}
3.Callable 和 FutureTask
public class MyThread implements Callable<String> {
    @Override
    public String call() throws Exception {
        return "hello world";
    }
}
class CallTest {
    public static void main(String[] args) throws ExecutionException, InterruptedException {
        FutureTask<String> strTask = new FutureTask<>(new MyThread());
        strTask.run();
        if (strTask.isDone()) {
            System.out.println(strTask.get());
        }
    }
}

网上也有说法是四种创建线程的方式,第四种是线程池,但是我不太认同,所以只写了三种,因为线程池的方式只是启动,而非是创建。

上一篇 下一篇

猜你喜欢

热点阅读