網(wǎng)友評(píng)分:
5分
jdk lts 11是一款長(zhǎng)期更新的java運(yùn)行環(huán)境軟件。我們通過創(chuàng)建一個(gè)新的常量池形式來實(shí)現(xiàn)這一點(diǎn),該形式可以使用用戶提供的行為進(jìn)行參數(shù)化,采用帶有靜態(tài)參數(shù)的引導(dǎo)方法。我們還將調(diào)整JVM和引導(dǎo)程序方法之間的鏈接時(shí)握手,非常適合編程人員。
就像invokedynamic調(diào)用站點(diǎn)的鏈接涉及從JVM到基于Java的鏈接邏輯的上行調(diào)用一樣,我們可以將相同的技巧應(yīng)用于常量池條目的解析。甲CONSTANT_Dynamic 恒定池條目編碼以執(zhí)行分辨率自舉方法(A MethodHandle),所述常數(shù)(的類型Class),以及任何靜態(tài)引導(dǎo)參數(shù)(常數(shù)的任意序列,在動(dòng)態(tài)常數(shù)之間的常量池限制周期。)
我們添加了一個(gè)新的常量池形式,CONSTANT_Dynamic(新的常量標(biāo)記17),它的標(biāo)記字節(jié)后面有兩個(gè)組件:bootstrap方法的索引,格式與a中的索引相同 CONSTANT_InvokeDynamic,a CONSTANT_NameAndType,編碼預(yù)期類型。
行為上,CONSTANT_Dynamic通過對(duì)以下參數(shù)執(zhí)行其引導(dǎo)方法來解析常量:1。本地Lookup 對(duì)象,2。String表示常量的名稱組件,3。Class表示期望的常量類型,以及4.任何剩余的引導(dǎo)參數(shù)。與此同時(shí)invokedynamic,多個(gè)線程可以競(jìng)爭(zhēng)解決,但將選擇一個(gè)獨(dú)特的贏家,并丟棄任何其他競(jìng)爭(zhēng)的答案。而不是CallSite像invokedynamic指令所要求的那樣返回一個(gè)對(duì)象,bootstrap方法將返回一個(gè)值,該值將立即轉(zhuǎn)換為所需的類型。
與此同時(shí)invokedynamic,除了類型之外,name組件是一個(gè)附加通道,用于將表達(dá)式信息傳遞給bootstrap方法。預(yù)期正如invokedynamic指令查找名稱組件的用途(例如,方法名稱或某些特殊描述符)一樣,動(dòng)態(tài)常量也將找到名稱的用途(例如,enum常量的名稱或符號(hào)常量的拼寫) )。把CONSTANT_NameAndType在兩地使得一個(gè)更經(jīng)常的設(shè)計(jì)。在效果上,CONSTANT_Methodref和 CONSTANT_Fieldref常數(shù)用來指的類名稱的成員,而類似的CONSTANT_InvokeDynamic和 CONSTANT_Dynamic常數(shù)用于指命名實(shí)體與用戶編程的引導(dǎo)程序。
181: Nest-Based Access Control(基于嵌套的訪問控制)
309: Dynamic Class-File Constants(動(dòng)態(tài)的類文件常量)
315: Improve Aarch64 Intrinsics(改進(jìn) Aarch64 Intrinsics)
318: Epsilon: A No-Op Garbage Collector(Epsilon 垃圾回收器,又被稱為"No-Op(無操作)"回收器)
320: Remove the Java EE and CORBA Modules(移除 Java EE 和 CORBA 模塊,JavaFX 也已被移除)
321: HTTP Client (Standard)
323: Local-Variable Syntax for Lambda Parameters(用于 Lambda 參數(shù)的局部變量語法)
324: Key Agreement with Curve25519 and Curve448(采用 Curve25519 和 Curve448 算法實(shí)現(xiàn)的密鑰協(xié)議)
327: Unicode 10
328: Flight Recorder(飛行記錄儀)
329: ChaCha20 and Poly1305 Cryptographic Algorithms(實(shí)現(xiàn) ChaCha20 和 Poly1305 加密算法)
330: Launch Single-File Source-Code Programs(啟動(dòng)單個(gè) Java 源代碼文件的程序)
331: Low-Overhead Heap Profiling(低開銷的堆分配采樣方法)
332: Transport Layer Security (TLS) 1.3(對(duì) TLS 1.3 的支持)
333: ZGC: A Scalable Low-Latency Garbage Collector (Experimental)(ZGC:可伸縮的低延遲垃圾回收器,處于實(shí)驗(yàn)性階段)
335: Deprecate the Nashorn JavaScript Engine(棄用 Nashorn JavaScript 引擎)
標(biāo)簽: jdk lts 11 java
html2canvas.js 免費(fèi)版 482K | 簡(jiǎn)體中文 | 10
詳情JAVA JDK V1.8 正式版 200.93M | 簡(jiǎn)體中文 | 8.1
詳情jdk8 32位安裝包 V8.0.3410.10 免費(fèi)版 157.7M | 簡(jiǎn)體中文 | 5.2
詳情JAVA JDK V15.0.1 官方免費(fèi)版 159.43M | 簡(jiǎn)體中文 | 5
詳情eclipse 64位 V4.8 官方最新版 312.3M | 簡(jiǎn)體中文 | 8.3
詳情jdk1.7 32位 V1.7 官方最新版 129.16M | 簡(jiǎn)體中文 | 4
詳情關(guān)于本站|下載幫助|下載聲明|軟件發(fā)布|聯(lián)系我們
Copyright ? 2005-2024 m.daaijiaoyu.cn.All rights reserved.
浙ICP備2024132706號(hào)-1 浙公網(wǎng)安備33038102330474號(hào)