java 启动线程的方式 3种方式详解

课程素材来自 http://enjoy.ke.qq.com/    版权所有

java 启动一个线程  最常见的方式有2种(继承thread  实现runnable接口),其实还有另外一种方式,是实现Callable接口

前面两种方式不说了  强调一下 runnable比thread好的方面是java是单继承  多实现的 ,所以个人认为runnable比thread好

这里主要说callable接口   callable是带返回参数的接口






package com.hw.ch1;

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.FutureTask;

/**
 * Created by Administrator on 2018/5/19.
 */
public class CallableThread {
    public static void main(String[] args) throws ExecutionException, InterruptedException {
        FutureTask  futureTask  = new FutureTask(new  MyCallable());
        Thread t   = new Thread(futureTask);
        t.start();
        System.out.println(futureTask.get());
    }


    public  static   class  MyCallable implements Callable<String> {
        @Override
        public String call() throws Exception {
            System.out.println(" call  is  running   ");
            return "success";
        }
    }
}


猜你喜欢

转载自blog.csdn.net/pf1234321/article/details/80373304