建立執行緒的方法
阿新 • • 發佈:2020-07-28
1.繼承Thread類
2.實現implement介面
3.實現Callable介面
import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.FutureTask; public class testCallable { public static void main(String[] args) { Test test = new Test(); //呼叫Callable需要構造一個FutureTast裝載實現Callable的類FutureTask<Integer> futureTask = new FutureTask<>(test); //FutureTask繼承了Runnable介面 Thread t = new Thread(futureTask); t.start(); try { //可通過get()方法獲取執行緒返回的值 //try/catch捕獲異常 System.out.println(futureTask.get());; }catch (InterruptedException | ExecutionException e) { e.printStackTrace(); } } } //實現Callable介面 class Test implements Callable<Integer>{ //重寫call方法,相比run方法更加強大, //能返回值和丟擲異常 @Override public Integer call() throws Exception { int sum=0; for (int i = 1; i <=100; i++) { System.out.println(i); sum+=i; } return sum; } }