package com.linear.table;import java.util.concurrent.CompletableFuture;public class CompletableFutureTest {public static void main(String[] args) throws InterruptedException, Exception { CompletableFuturecompletableFuture=new CompletableFuture<>(); new Thread(()->{ System.out.println("runing..."); try { Thread.sleep(5000); // 告诉completableFuture任务已经完成 completableFuture.complete("ok"); int i=10/0;//制造异常 } catch (Exception e) { System.out.println(e.toString()); // 告诉completableFuture任务发生异常了 completableFuture.completeExceptionally(e); } }).start(); /** * 如果该线程没有执行完成,处于阻塞状态,不会再执行后面的代码, */ String result=completableFuture.get(); if(result.equals("ok")){ System.out.println("執行完le ..."+":"+result); }}}运行结果:runing...java.lang.ArithmeticException: / by zero執行完le ...:ok