Java新特性(2):Java 10以后
您好,我是湘王,这是我的云海天,欢迎您来,欢迎您再来~
虽然到目前为止Java的版本更新还没有什么惊天动地的改变,但总是会冒出一些有趣的小玩意。前面列举了Java9和Java10的一些特色,现在接着来撸一撸Java11之后的新奇特。
Java9更新了Http 2 Client,也说过先不着急看,因为在后续版本中语法会变。这不,到Java11就实现了。最直接的变化就是http相关包名由Java 9的jdk.incubator.http改为Java 11的java.net.http。感觉java.net.http才像那么回事,incubator是个啥呢?好像完全和http不沾边。本着好奇害死猫的精神,查了下incubator的意思:
好吧,原来JDK工作组认为http在Java9中出现是个「早产儿」。
再来看看Java11对http的更新,例如通过http访问某度的主页:
// 包名由Java 9的jdk.incubator.http改为Java 11的java.net.http HttpClient client = HttpClient.newHttpClient(); HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("http://www.baidu.com/")) .build(); client.sendAsync(request, BodyHandlers.ofString()) .thenApply(HttpResponse::body) .thenAccept(System.out::println) .join();