国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

JAVA9-12新特性簡述

TigerChain / 3166人閱讀

摘要:本文是個人在企業內部分享使用的簡要大綱,列舉了的重要更新,文章的結構較簡單,也不規范,鑒于近期寫若干文章時總會忘記一些新特性所處的版本,特將此大綱流留用。

本文是個人在企業內部分享使用的簡要大綱,列舉了JAVA9-12的重要更新,文章的結構較簡單,也不規范,鑒于近期寫若干文章時總會忘記一些新特性所處的版本,特將此大綱流copy留用。

一 JAVA9 新特性

1.Java Platform Module System/ Modular Java Application Packaging模塊化系統及類加載器分級

2.jshell

3.Multi-Release JAR Files 多版本的jar包

4.Jlink 工具

5.Segmented Code Cache 代碼片段緩存

6.Dynamic Linking of Language-Defined Object Models 動態鏈接語言定義模型

7.Unified JVM Logging 統一JVM日志

8.將G1作為默認垃圾收集器,并deprecated CMS.

9.進程API

10.變量句柄

11.字符串內部實現優化(字符數組變字節數組+編碼方式)

12.發布訂閱框架

13.集合工廠方法

14.自旋暗示

15.對象序列化數據過濾

16."棧旅行者"

17.Milling Project Coin(鬼知道該怎么翻譯).

Allow @SafeVargs on private instance methods. //允許在私有實例方法上標注@SafeVargs注解

Allow effectively final variables to be used as resources in the try-with-resourcesstatement. //try-with-resource 語法支持實際final的變量

Allow the diamond with anonymous classes if the argument type of the inferred type is denotable.//允許對可推薦出類型的匿名內部類使用鉆石符號.

Complete the removal, begun in Java SE 8, of the underscore from the set of legal identifier names.//移除java8中已經開始的,以下劃線作為完整標識符名稱

Add support for private interface methods.//接口中可定義私有方法.

18.擴大的unicode集

19.孵化官方http client.

二 JAVA10

1.局部變量類型推斷

2.統一定義的 GC接口.

3.g1垃圾收集器的并行full gc

4.應用類數據共享

5.thread local 握手

6.擴展unicode語言標簽.

三. JAVA11

1.unicode10支持

2.標準化java9中孵化的http客戶端

demo:同步式編程

public void get(String uri) throws Exception {

    HttpClient client = HttpClient.newHttpClient();
    HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create(uri))
            .build();
    HttpResponse response =
            client.send(request, HttpResponse.BodyHandlers.ofString());

    System.out.println(response.body());
}

demo:響應式編程

public CompletableFuture getCompletableFuture(String uri) {

    HttpClient client = HttpClient.newHttpClient();
    HttpRequest request = HttpRequest.newBuilder()
            .uri(URI.create(uri))
            .build();

    return client.sendAsync(request, HttpResponse.BodyHandlers.ofString())
            .thenApply(HttpResponse::body);
}

demo:響應式編程-并發

public void testConcurrentRequests(){

    HttpClient client = HttpClient.newHttpClient();
    List urls = List.of("http://www.baidu.com","http://www.alibaba.com/","http://www.tencent.com");
    List requests = urls.stream()
            .map(url -> HttpRequest.newBuilder(URI.create(url)))
            .map(reqBuilder -> reqBuilder.build())
            .collect(Collectors.toList());

    List>> futures = requests.stream()
            .map(request -> client.sendAsync(request, HttpResponse.BodyHandlers.ofString()))
            .collect(Collectors.toList());
    futures.stream()
            .forEach(e -> e.whenComplete((resp,err) -> {
                if(err != null){
                    err.printStackTrace();
                }else{
                    System.out.println(resp.body());
                    System.out.println(resp.statusCode());
                }
            }));
    CompletableFuture.allOf(futures
            .toArray(CompletableFuture[]::new))
            .join();
}

注:以上代碼是分享時從網上轉來的,因為此文是從內部wiki粘過來,出處已忘。接下來打算發一篇CompletableFuture有關的文章,最近對響應式編程的興趣更加深刻了。

3.Collection.toArray(IntFunction) Default 方法

4.編譯器線程的懶分配

5.體驗版zgc大殺器(缺少類和元數據卸載)

6.Epsilon GC no-op 體驗版

7.少代價的堆分析工具jvmti

8.nests, an access-control context ,省去編譯器插入accessibility-broadening bridge methods

9.一些屬性變事實的只讀.java.home, user.home, user.dir, user.name等

10.Reference類不再支持克隆

11.使用classpath進行編譯運行時,默認解析的模塊策略變更:root模塊集在此版本變更為所有可見的導出api的系統模塊,唯一可見的改變是java.se模塊不在默認解析.

12.SelectableChannel可以在select操作正在進行中注冊.

13.DatagramChannel.send Throws AlreadyConnectedException Instead of IllegalArgumentException

14.為并發gc提供新的性能記數器

15.g1支持自適應的引用處理時的線程數.所有gc支持stw階段的并行自適應.

16.模塊路徑下支持類數據共享cds.

四.JAVA12

1.unicode11支持

2.jvm常量api

3.簡寫的數字格式:1k

4.zgc支持并發類數據卸載

5.支持交替在內存設備上分配老年代,支持相應功能的設備如"非易變-雙列直插式內存模型"(NV-DIMM).

6.switch case支持語句的同時支持表達式.case ... ->

7.更好的支持http重定向(HttpURLConnection)

8.g1可能在并發標記周期交回內存.

9可終止的g1混合gc

10.讓g1在空閑時自動交回已提交但未使用的內存.

11.Shenandoah 低停頓gc體驗版.

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/74962.html

相關文章

  • ForkJoin框架之CompletableFuture

    摘要:內部類,用于對和異常進行包裝,從而保證對進行只有一次成功。是取消異常,轉換后拋出。判斷是否使用的線程池,在中持有該線程池的引用。 前言 近期作者對響應式編程越發感興趣,在內部分享JAVA9-12新特性過程中,有兩處特性讓作者深感興趣:1.JAVA9中的JEP266對并發編程工具的更新,包含發布訂閱框架Flow和CompletableFuture加強,其中發布訂閱框架以java.base...

    lindroid 評論0 收藏0
  • JAVA運行時簡述(HotSpot)

    摘要:拆解虛擬機的基本步聚如下首先,要等待到自身成為唯一一個正在運行的非守護線程時,在整個等待過程中,虛擬機仍舊是可工作的。將相應的事件發送給,禁用,并終止信號線程。 本文簡單介紹HotSpot虛擬機運行時子系統,內容來自不同的版本,因此可能會與最新版本之間(當前為JDK12)存在一些誤差。 1.命令行參數處理HotSpot虛擬機中有大量的可影響性能的命令行屬性,可根據他們的消費者進行簡...

    hosition 評論0 收藏0
  • Apache和Spring提供的StopWatch執行時間監視器

    摘要:借助它來統計我們程序的執行時間,帶給非常多的方便和優雅。且,且,且設置為了當前時間。 相關閱讀 【小家java】java5新特性(簡述十大新特性) 重要一躍【小家java】java6新特性(簡述十大新特性) 雞肋升級【小家java】java7新特性(簡述八大新特性) 不溫不火【小家java】java8新特性(簡述十大新特性) 飽受贊譽【小家java】java9新特性(簡述十大新特性) ...

    Genng 評論0 收藏0
  • 2019前端秋季社招面試經歷總結(三年經驗)

    摘要:經歷月份開放的簡歷,收到了蠻多詢問和面試,算是招人旺季,需要跳槽的小伙伴抓住機會。現在是面試了家公司左右,有些高頻問題會標記次數總次數,可供大家參考。最后祝大家面試順利,拿到心儀的,寫錯的地方請不吝賜教,謝謝。 經歷 7月份開放的簡歷,收到了蠻多詢問和面試,算是招人旺季,需要跳槽的小伙伴抓住機會。一開始廣泛看面試題,沒抓住重點復習,有很多平時也沒怎么用到,導致一開始面試的時候,問的問題...

    Kross 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<