- 軟(ruǎn)件大小:149.00M
- 軟件(jiàn)語言:中文(wén)
- 軟件類型:國產軟(ruǎn)件
- 軟件類別:免費軟件 / 編程(chéng)工具
- 更新時間:2019-07-20 11:44
- 運行(háng)環境(jìng):WinXP, Win7, Win8, Win10
- 軟件等級:
- 軟件廠商:
- 官方網(wǎng)站:http://www.ynaad.com/
153.32M/中文/2.6
322.46M/中文/2.8
15.91M/中文/5.0
2.49M/中文/0.0
67.48M/中文(wén)/10.0
jdk11是java程序員常用的工(gōng)具,現在發行了(le)11版本了,更新了不少細節的地方這(zhè)些都需要自己在使用中去發(fā)現,而且還有更多的不同jdk版本提供下載,可以按照自己的需(xū)求進行選擇,而且整(zhěng)個軟件非常好用,喜歡就來綠色資源網下載吧!
jdk | ||
jdk12 | jdk 1.9 | JDK v8.0 |
jdk6.0 | java jdk1.6 32位 | oracle jdk1.6驅(qū)動 |
1.下(xià)載好安裝包之後(hòu),點擊(jī)開始安裝
2.一般直(zhí)接選擇默認路徑,當然也能改,但是路徑別出現中文就行了
3.安裝完成,現在開(kāi)始配置環境變量
4.我這(zhè)裏演(yǎn)示的(de)是win7係統(tǒng),點擊計算機選(xuǎn)擇屬性
5.點擊高級係統設置,然後點擊(jī)環境變(biàn)量
6.選擇係統變量的Path然後點(diǎn)擊編輯
7.在變量值最後輸(shū)入 %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;(注意原來Path的變量值末尾有沒有(yǒu);號,如果沒有先輸入(rù);號再輸入上麵(miàn)的代碼)
8.選擇CLASSPATH 變量,點擊編輯,輸(shū)入 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前麵有一(yī)點)
9.如果沒有java_home新(xīn)建一個,小編這裏上次(cì)裝了一(yī)個jdk12所以有
10.新建(jiàn) JAVA_HOME 變量 。變(biàn)量值填寫你安裝jdk剛剛選擇的目錄(本人是 C:\Program Files\Java\jdk-11.0.4)
11.按一(yī)下win+r(win就是ctrl和alt中間那個按(àn)鍵(jiàn)),然後輸(shū)入cmd
12.輸入java -version ,如圖就是安裝配置成功了
我們尋求降低創建新形式的可實現類文件常量(liàng)的成本和中斷,這反過來又為(wéi)語(yǔ)言設計者(zhě)和編譯器實現(xiàn)者提供了更廣泛的表達性和性能選擇(zé)。我們通過創建一個新的常量池形式來實(shí)現這一點,該(gāi)形式可(kě)以使用用戶提供的行為(wéi)進行參數化(huà),采用帶有靜態參數(shù)的引導(dǎo)方法。我們還將調整JVM和引導程序方法(fǎ)之間的鏈接時握手,以便使所(suǒ)使用的引導程序API invokedynamic適用於動態常量。根據invokedynamic我們的經驗,我們將調整兩者invokedynamic和動態常量的(de)自舉握手,放鬆對參數列表處理到引導方法的某些限製。這項工作需(xū)要JDK庫的一些原型設計支持幾種常(cháng)量類型的代表性樣本,特(tè)別是變量句柄(JEP 193)。為了支持(chí)這種原型(xíng)設計,這項工作將(jiāng)與其他關於常量表達式的基本語言支持的工作相協
描(miáo)述
就像invokedynamic調用站點的鏈接涉及從JVM到基於Java的鏈接邏輯的上行調用一樣,我們可以將相同的技巧應用(yòng)於常量池條目的(de)解析(xī)。甲CONSTANT_Dynamic 恒定池條(tiáo)目編碼以執行分辨率自舉方法(A MethodHandle),所述常數(shù)(的(de)類型Class),以及(jí)任(rèn)何靜態引導參數(常數的任意序列(liè),在動態常數之間的常量池限製周期。)
我們添加了一個新的常量池形式,CONSTANT_Dynamic(新的(de)常量標記(jì)17),它的(de)標記字節後麵有兩個組件:bootstrap方法的索引,格式與(yǔ)a中的索引相同 CONSTANT_InvokeDynamic,a CONSTANT_NameAndType,編碼預期類型(xíng)。
行為上,CONSTANT_Dynamic通過(guò)對(duì)以下參數執行其引導方法來解析常量:1。本地Lookup 對象,2。String表(biǎo)示常量的名稱組件(jiàn),3。Class表示期望的常量(liàng)類型(xíng),以及4.任何剩(shèng)餘的引導參數。與此同時invokedynamic,多個線程可以競爭(zhēng)解決,但將選擇一個獨特的贏家,並丟棄(qì)任何其他競爭的答案。而不是CallSite像invokedynamic指令所要求的那樣返回(huí)一個對象(xiàng),bootstrap方法將返回一個值,該值將(jiāng)立(lì)即轉換為(wéi)所(suǒ)需的類型。
與此(cǐ)同時invokedynamic,除了類型之外,name組件是一個附加通道,用於將表達式信息傳遞給bootstrap方法。預期正如invokedynamic指令查找名稱組件的用途(例如,方法名稱或某些特殊描述符)一樣,動態常量也將找到名稱的用途(例如,enum常量的名稱或符號常量的拚寫) )。把CONSTANT_NameAndType在兩地使得(dé)一(yī)個更經(jīng)常的設計。在效果上,CONSTANT_Methodref和 CONSTANT_Fieldref常數用來指的類(lèi)名稱(chēng)的(de)成員,而類似的CONSTANT_InvokeDynamic和 CONSTANT_Dynamic常數用於指命名實體與用(yòng)戶編程的引導程序。
具(jù)有兩個invokedynamic和 的常量的類型組件CONSTANT_Dynamic確定(dìng)調用站點的有效類型或常量(分別)。引導方法(fǎ)不會貢獻或(huò)約束此類型信息,因此引導方(fāng)法可能(通常是(shì))弱類型,而字節碼(mǎ)本身始終是強類型的(de)。
為了放寬對引導說(shuō)明(míng)符的長度(dù)限製,將調(diào)整(zhěng)定義引導方法調用的語言(具有完(wán)全(quán)向後兼容性),以允許變量arity(ACC_VARARGS)引導(dǎo)方法將所有剩餘的靜(jìng)態參數吸收到其尾隨參數中,即使存在(zài)是2 ^ 16-1。(類文件格式(shì)已經允許這樣,但(dàn)是沒有辦(bàn)法讀取過長的引導(dǎo)參數列表。)為了保持一致(zhì)性(xìng),如果目標方法具有可變的arity ,那麽 invokeWithArguments方法MethodHandle也將以(yǐ)這種方式擴展。這樣的引導方法調用可以在弱(ruò)類型的方法來指定invokeWithArguments和invoke,就像今(jīn)天(tiān)它在(zài)來指定invoke一個人。
控製引導鏈接錯誤已被(bèi)證明是來自用(yòng)戶的(de)錯(cuò)誤和RFE的重複來(lái)源,並且invokedynamic隨著引導方法變得更加複雜(因為它們必須具(jù)有動(dòng)態常量),趨勢可能會加速。如果我們能(néng)找(zhǎo)到一種方法來提供對引導方法異常的更全(quán)麵控製,並且可以簡單地完(wán)成,我們將考慮將其作為此JEP的一部(bù)分提供。否則,它將列入未來的增強功能列表。
動機
Java虛擬機規範(fàn)的4.4節描述了常量池的格式。添加新的常量池形式(例如Java 7 的支持MethodHandle和(hé)MethodType引入)是一項重大的工作,並在生態係統中發出漣漪,因為它會影響解析或解釋類文件的所有代碼。這為創建新的恒定池(chí)形式提供了很高的標準。
使用invokedynamic,將常量池(chí)中存儲複雜數據的值相(xiàng)乘,因為(wéi)invokedynamic引導程序的靜態參(cān)數列表 是一係列常量。invokedynamic協議的設計者 (例如LambdaMetafactoryJava 8中添加的)通常很難滿足根據現有常量集編碼行為的需要 - 這反過來又需要(yào)在引導程序本身中具有額外的容易出錯的驗證和提取邏輯。更豐富,更靈活,更高類型(xíng)的常量消(xiāo)除了invokedynamic協(xié)議開發的摩擦,這反過來又促進了複雜邏輯從運行時到鏈接(jiē)時的移動,提高了程序性能並簡化了編譯器邏輯。
支持批量比例常量,如數組或資(zī)源表
進一步調整bootstrap方法握手
可以與動態(tài)常數協同的自舉方法的其他用途
將動態常量(liàng)附加到ConstantValue靜態字段(duàn)的屬性
展示Java語言中常量的延遲初始化
將新常量與特殊Java語言規則集成在一起用於常量表達(dá)式
src/share/classes/java/lang:
包含實現Unicode字符數據庫的Character和的 源。String
src/share/classes/java/text:
包含源,用於提供類語言環境敏感的(de)服務,例如DateFormat,NumberFormat, Collator,Normalizer,Bidi, BreakIterator,等。
src/share/classes/java/util:
包含源語言環境的工具類如(rú) Locale,Currency,Calendar, TimeZone,ResourceBundle,等。
src/share/classes/sun/[text|util]/resources:
包(bāo)含上述區域設置敏感類所需的區域設置數據。
src/share/classes/java/awt/im:
包含 Input Method Framework的API類的源。
src/share/classes/sun/awt/im:
包含 輸入法框架的實(shí)現類的源(yuán)。
src/solaris/classes/sun/awt/fontconfigs, src/windows/classes/sun/awt/windows:
包含 字體配置文件的源
請描述您所遇到的錯誤,我們(men)將(jiāng)盡快予以(yǐ)修正,謝謝!
*必填項,請輸入內容(róng)