jdk1.9 64λÊÇÒ»¿îÈ«ÐÂÉý¼¶µÄ·¢²¼µÄtavaÓïÑÔµÄÈí¼þ¿ª·¢¹¤¾ß°ü£¬¼ÓÉÏÁ˵Än¶àjdk1.8›]ÓеÄÌØÐÔ£¬¼«´óµØÔöÇ¿Á˹¤×÷ЧÄÜ£¬Õë¶Ôϲ°®Éý¼¶»»´úÇÀÏʵijÌÐòÔ³¶øÑÔÕæµÄÊǺܲ»´íµÄÌôÑ¡£¬¸Ï½ôÀ´Ãâ·ÑÏÂÔØÊÔÊÔ°É£¡
JDKÊÇ java ÓïÑÔ±í´ïµÄÈí¼þ¿ª·¢¹¤¾ß°ü£¬ÊÊÓÃÓÚÒƶ¯É豸¡¢ÄÚǶʽ»úÆ÷É豸ÉϵÄjavaÓ¦ÓÃÈí¼þ¡£JDKÊÇÈ«²¿java¿ª·¢µÄ¹Ø¼ü£¬Ëü°üÀ¨ÁËJAVAµÄÈí¼þ»·¾³£¬JAVAרÓù¤¾ßºÍJAVA»ù±¾µÄÀà¿â¡£
java9ÐÂÌØÐÔ
1. Jigsaw ÏîÄ¿;Ä£¿é»¯Éè¼ÆÔ´´úÂë
JigsawÏîÄ¿ÊÇΪÁ˸üºÃµØÄ£¿é»¯Éè¼ÆJava´úÂë¡¢½«jre·ÖΪ¿ÉÏ໥ÅäºÏµÄ²¿¼þ£¬ÕâÒ²ÊÇJava 9 Öî¶àÌصãÖÖµÄÒ»¸ö¡£JEPÊÇÂõ½øJigsawËIJ½ÖеĵÚÒ»²½£¬ËüʼÖÕ²»±äJREºÍJDKµÄʵ¼Ê¹¹Ôì¡£JEPÊÇΪÁ˸üºÃµØÄ£¿é»¯Éè¼ÆJDKÔ´´úÂ룬ÈñàÒëϵͳÈí¼þ¿ÉÒÔ¿ØÖÆÄ£¿é±àÒë²¢Ôڴʱ²éÑé¿ØÖÆÄ£¿é½çÏÞ¡£ÕâÒ»ÏîÄ¿±¾À´ÊÇËæJava 8¹«²¼µÄ£¬µ«ÒòΪÑÓ³Ù£¬Òò´Ë½«°ÑËü¼Ó½øJava 9.
Ò»µ©Ëü½øÐУ¬ËüºÜÓпÉÄÜÈÝÐíÒÀ¾ÝÒ»¸öÏîÄ¿ÒªÇó×Ô¶¨²¿¼þ½ø¶ø½µµÍrt.jarµÄ³ß´ç¡£ÔÚJDK 7 ºÍJDK 8µÄrt.jar°üÖÐÓдó¸Å20,000¸öÀ࣬µ«ÓкܶàÀàÔÚһЩÌØÊâµÄÌõ¼þÀï±ß²¢›]Óб»Ê¹ÓÃ(¼´Ê¹ÔÚJava 8µÄ½ôÃܱ鲼ÌØÐÔÖоͰüÀ¨ÁËÒ»²¿·Ö½â¾ö·½°¸Ò²¾ßÓÐ×ÅÀà³ÁÓà)¡£ÄÇô×öÊÇÒòΪÄÜÈÃJava¿ÉÒԷdz£ÈÝÒ×ÔËÓõ½ÖÐСÐͲâËã»úÆ÷É豸(ÀýÈç¼ÆËã»úÉ豸)ÖУ¬ÌáÉýËüµÄ°²È«¿É¿¿ºÍÐÔÄÜ£¬Óë´ËͬʱҲ¿ÉÒÔÈÿª·¢ÈËÔ±¸ü·Ç³£ÈÝÒ״ºÍά»¤±£ÑøÕâÖÖÀà¿â¡£
2. ¼òµ¥»¯¹ý³ÌAPI
½ØÖ¹µ½Ïֽ׶Σ¬Java²Ù×ÝÓëÖÇÄܹÜÀíϵͳ¹ý³ÌµÄʵÁ¦ÊÇÓоÖÏ޵ġ£¾ÙÀý˵Ã÷£¬Èç½ñΪÁ˸üºÃµØ¼òµ¥»ñµÃÄã³ÌÐòÁ÷³ÌµÄ¹ý³ÌPID£¬ÄãÒª²»¶ÁÈ¡µ±µØ³ÌÐòÁ÷³ÌÒª²»Òª×ÔÉíÓ¦ÓÃһЩËæ»úÓ¦±ä¼Æ»®·½°¸¡£´óÁ¿µÄÊÇ£¬Ã¿Ò»¸ö£¨ÏµÍ³Èí¼þ£©·þÎñƽ̨±ØÐëÓÐÒ»¸ö²»Ò»ÑùÍê³ÉÀ´±£Ö¤Äã¿ÉÒԵõ½ºÏÀíµÄ½Y¹û¡£
3. ÇáÁ¿ JSON API
Ïֽ׶ÎÓкܶàÖÖ½â¾öJSONµÄJavaרÓù¤¾ß£¬µ«JSON API ¶Àµ½¼û½âÈ¡¾öÓÚJSON API½«×öΪJavaÓïÑÔµÄÒ»²¿·Ö£¬ÇáÇɶøÇÒÓ¦ÓÃJava 8µÄÐÂÌØÐÔ¡£Ëü½«·Åµ½java.util°üÄÚÒ»Æ𹫲¼(µ«ÔÚJSR 353Àï±ßµÄJSONÊÇÓõÚÈý·½°ü»òÊDZðµÄµÄ°ì·¨½â¾öµÄ).
4. Ç®ºÍ´û±ÒµÄAPI
ÔÚJava 8ÒýÈëÁËÈÕÆں͕r¼äµÄAPIÒÔºó, Java 9Òý½øÁËеĴû±ÒAPI, ÓÃÓÚ±íÃ÷´û±Ò, ÊÊÓûõ±ÒÖмäµÄ±ä»»ºÍ¸÷ÖÖ¸÷Ñù·±ÔÓ¼ÆËã. ÓйØÕâÒ»ÏîÄ¿µÄÏêϸÇé¿ö¡£
5. ¸Ä½øËøÕùÓÃÌåÖÆ
ËøÕùÓÃÊÇÏÞ¶¨ºÜ¶àJavaÏß³Ìͬ²½ÔËÓÃÐÔÄܵĶ̰å. еÄÌåÖÆÔڸĽøJavaÄ¿±ê¼à¿ØÆ÷µÄÐÔÄܲãÃæÔçÒÑ»ñµÃÁ˶àÖÖ¶àÑù±ê×¼(benchmark)µÄÈÏÖ¤, Ö÷Òª°üÀ¨Volano. ¼ì²âÖÐͨѶ·þÎñÆ÷¶ÔÍ⿪·ÅÁË´óÁ¿µÄ¹ý³ÌÀ´Áª½ÓÊÖ»ú¿Í»§¶Ë, ÔÚÆäÖÐÓкܶàÁª½Ó¶¼ÉêÇë°ìÀíͬһ¸öÙYÔ´, Ϊ´Ë·ÂÕæÄ£ÄâÖظºÔØÈÕ³£ÔËÓÃ.
¸ù¾Ý¸÷ÊãÒѼûµÄÎȶ¨ÐÔ²âÊÔÎÒÃÇ¿ÉÒÔ¹À¼ÆJVMµÄ˜OÏÞ»õÔËÁ¿(ÿÃëÖÓµÄÐÅÏ¢×ÜÊý). JEPÔÚ22ÖÖ²»Ò»ÑùµÄ¼ì²âÀﶼ»ñµÃÁËÓÅÒìµÄ¿¼ÊԳɼ¨, еÄϵͳ¼ÙÈçÄÜÔÚJava 9ÖлñµÃÔËÓõû°, Ó¦ÓÃÈí¼þµÄÐÔÄÜ¿ÉÄÜ´ó´óµÄÌá¸ß.
6. ´úÂë·Ö¶Î»º´æÎļþ
Java 9µÄÁíÒ»¸öÐÔÄÜÌá¸ßÀ´×ÔÓÚJIT(Just-in-time)±àÒëÆ÷. µ±Ä³Ò»¶Î´úÂë±»ºÜ¶à·´¸´ÊµÐеÄÇé¿öÏÂ, ÐéËÆ»úÓö°ÑÕâÒ»¶Î´úÂë±àÒë³ÉÐòÁкÅ(native code)²¢´æ´¢ÔÚ´úÂ뻺´æÎļþÀï±ß, ´Ó¶ø¸ù¾Ýä¯ÀÀ»º´æÎļþÖв»Ò»Ñù·Ö¶ÎµÄ´úÂëÀ´Ìá¸ß±àÒëÆ÷µÄ¸ßЧÂÊ.
ºÍÔÏȵĵ¥Ò»»º´æÎļþµØÇø²»Ò»ÑùµÄÊÇ, еĴúÂ뻺´æÎļþÒÀ¾Ý´úÂë±¾ÉíµÄÏîÄ¿ÉúÃüÖÜÆÚ¶ø»®·Ö³ÉÈýÖÖ:
- ÓÀס´úÂë(JVM ÄÚǶ / ·Ç·½Ê½´úÂë)
- ¶ÌÆÚÄÚ´úÂë(½öÔÚһЩ±ê׼ϿÉÓõÄÅ䱸ÐÔ(profiled)´úÂë)
- ³¤ÆÚÐÔ´úÂë(·ÇÅ䱸ÐÔ´úÂë)
»º´æÎļþ·Ö¶Î»áÔÚ¸÷¸öÁìÓòÌá¸ß³ÌÐòÁ÷³ÌµÄÐÔÄÜ, ÀýÈç×öÀ¬»ø·ÖÀà»ØÊÕɨÃèÒǵĹý³ÌÖпÉÒÔÁ¢¼´Èƹý·Ç·½Ê½´úÂë(ÓÀס´úÂë), ½ø¶øÌá¸ß¸ßЧÂÊ.
7. ÖÇÄÜ»¯Java±àÒë, µÚ¶þ½×¶Î
ÖÇÄÜ»¯Java±àÒëרÓù¤¾ßsjavacµÄµÚÒ»½×¶ÎÖð½¥ÓÚJEP 139ÕâÒ»ÏîÄ¿, ÓÃÒÔÔÚ¶àºË´¦ÀíÆ÷ÉÏÌá¸ßJDKµÄ±àÒëËÙÂÊ. Èç½ñÕâÒ»ÏîÄ¿ÔçÒѽøµ½µÚ¶þ½×¶Î(JEP 199), Ä¿µØÊǸÄÉÆsjavac²¢ÈÃÆä±ä³ÉÌæ´úÏֽ׶ÎJDK±àÒëרÓù¤¾ßjavacµÄJavaĬÈÏÉèÖõÄͨÓÃÐÔ±àÒëרÓù¤¾ß.
8. HTTP 2.0ÊÖ»ú¿Í»§¶Ë
HTTP 2.0¹æ·¶¾¡¹Ü»¹Ã»Ðû²¼¹«²¼, ¿ÉÊÇÔçÒѽøÈëÁË×îºóºË²é»·½Ú, Ô¤¹À¿ÉÒÔÔÚJava 9¹«²¼ÒÔÇ°ºË²é½áÊø. JEP 110¿ÉÄܳ¹µ×¸Ä±ä²¢Íê³ÉÒ»¸öÈ«ÐÂÉý¼¶µÄJava HTTPÊÖ»ú¿Í»§¶Ë, ÓÃÓÚÌæ´úÈç½ñµÄHttpURLConnection, Óë´ËͬʱҲ»áÍê³ÉHTTP 2.0ºÍÍøÂç½Ó¿Ú(È«ÎÄwebsockets). ËüÈç½ñ»¹Ã»±»JEPÐû²¼ÈÏͬµ«´ó¼ÒÆÚ´ýÔÚJava 9ÖаüÀ¨ÕâÒ»ÏîÄ¿µÄƒÈÈÝ.
¹Ù·½ÍøµÄHTTP 2.0 RFC(Request for Comments, ¹Ù·½Íø¼¼ÊõÌÖÂÛ/»áÒé¼ÍÒªÕâЩµÄһϵÁÐÎı¾Îĵµ¼Í¼)¶©¹ºÓÚ2015Äê2Ô¹«²¼, ËüÊǸù¾ÝGoogle¹«²¼µÄSPDY(Speedy, ѸËÙµÄ)ÐÒå. ¸ù¾ÝSPDYÐÒåµÄ»¥ÁªÍø¶ÔÓÚ¸ù¾ÝHTTP 1.1ÐÒåµÄ»¥ÁªÍøÓÐ11.81%µ½47.7%ÖмäµÄÃ÷ÏÔ¼ÓËÙ, Èç½ñÔçÒÑÓеçÄÔä¯ÀÀÆ÷Íê³ÉÁËÕâÒ»ÐÒå.
9. Kulla·½°¸: JavaµÄREPLÍê³É
ÕâÒ»ÆðÃû½ÐKullaµÄÏîÄ¿½üÆÚ¹«²¼½«ÓÚ2015Äê4ÔÂÈںϼì²â, ¾¡¹ÜÔçÒѲ»Ì«ÓÐÆÚ´ýÄÜ×·ÉÏJava 9µÄ¹«²¼, µ«¼ÙÈç½øÕ¹¿ìµÃ»°Ò²ÐíÇ¡ºÃÄÜ×·ÉÏ. Èç½ñJava²¢›]ÓÐÀ´Ô´ÓÚ¹Ù·½ÍøµÄREPL(Read-Eval-Print-Loop)·½·¨, »»¾ä»°ËµÈç½ñ¼ÙÈçÄãÒªÏëÅܼ¸ÐÐJava´úÂë×öÒ»¸ö¸ßЧµÄ¼ì²â, ÄãÒÀÈ»±ØÐë°ÑÕ⼸ÐдúÂë·â×°ÐÎʽÔÚÏîÄ¿»òÊÇ·½Ê½Àï±ß. ¾¡¹ÜÔÚһЩÊÜ»¶ÓµÄIDEÀï±ßÓÐJava REPLרÓù¤¾ß, µ«ÕâЩ²¢›]Óйٷ½ÍøÊÊÓÃ, ¶øKullaÏîÄ¿Ò²Ðí¾ÍÄܱä³ÉJava¹Ù·½·¢²¼µÄREPL½â¾ö·½·¨.
³£¼û»ù±¾ÉÏרÓù¤¾ß
1. Javac: JavaÔ´´úÂë±àÒëÆ÷£¬½«JavaÔ´´úÂëת»¯³É×Ö½ÚÂë¡£
2. Java: Java±àÒëÆ÷£¬Á¢¼´´Ó×Ö½ÚÂëÎĵµ£¬ÓÖ³Æ֮ΪÀàÎĵµ.ʵÐÐJavaÓ¦ÓÃÈí¼þµÄ×Ö
½Ú´úÂë¡£
3. appletviewer.exe Java appletµçÄÔä¯ÀÀÆ÷¡£appletviewerÖ¸Áî¿ÉÔÚ°ÚÍÑÒòÌØÍøµçÄÔä¯ÀÀÆ÷
×ÔÈ»»·¾³µÄÇéÐÎÏÂÔË×÷applet
4. jar: javaÓ¦ÓÃÈí¼þ·â×°¹¤¾ß£¬¿É½«ºÃ¼¸¸öÀàÎļþºÏ²¢Îªµ¥¶ÀÒ»¸öJAR¹éµµÎļþ¡£
5.Javadoc: Java APIÎı¾ÎĵµÖÆ×÷Æ÷´ÓJavaÔ´´úÂë´úÂë×¢½âÖлñÈ¡Îı¾Îĵµ£¬×ª»¯³ÉAPIÎÄ
µµHTMLÒ³¡£
6. jdb: Javaµ÷ÊÔÆ÷(debugger),¿ÉÒÔÒ»ÐÐÐгÌÐòÖ´ÐÐ.É趨ÖжϵãºÍ²éÑé±äMd
µ±ÎÒÃdz¤Ê±¼äʹÓüÆËã»úʱ£¬¼ÆËã»ú»áÁôÏÂһЩʹÓùýµÄºÛ¼£¡£Õâ½Ð×ö»º´æ¡£ÓÐÐí¶àÖÖ»º´æ£¬ÀýÈçÀ´×ÔÍøÒ³ºÍ´°¿ÚµÄ»º´æ¡£Èç¹û»º´æûÓж¨ÆÚÇåÀí£¬Ëü½«¼õÂýÄúµÄ»úÆ÷Ëٶȡ£»º´æÇåÀí¹¤¾ß¿ÉÒÔ°ïÖúÄú¾¡¿ÉÄÜ¿ìµØÇåÀíÀ¬»øÎļþ¡£ÔÚËüµÄ°ïÖúÏ£¬Äúϲ»¶³¹µ×Çå½à»úÆ÷²¢Æ½ÎÈÔËÐУ¡Ö÷ÒªÇåÀí£ºËùÓÐÓ¦Óûº´æ¡¢ä¯ÀÀÆ÷»º´æµÈ¡£¶àÌØÈí¼þרÌâΪÄúÌṩ»º´æÇåÀíÈí¼þ,רҵ»º´æÇåÀíÀ¬»øÈí¼þÏÂÔØ,»º´æÇåÀí´óʦ¡£¶àÌØÈí¼þÕ¾Ö»ÌṩÂÌÉ«¡¢ÎÞ¶¾¡¢ÎÞ²å¼þ¡¢ÎÞľÂíµÄ´¿ÂÌÉ«Èí¼þÏÂÔØ¡£
¶àÌØÈí¼þרÌâΪÄúÌṩ·´±àÒëÈí¼þ,·´±àÒëexeÈí¼þ,apk·´±àÒëÈí¼þ£¬°²×¿Æ»¹û°æÈí¼þappÒ»Ó¦¾ãÈ«¡£
¶àÌØÈí¼þרÌâΪÄúÌṩ´úÂë¶Ô±È¹¤¾ß,Ò×ÓïÑÔ´úÂë¶Ô±È¹¤¾ß,´úÂë¶Ô±È;°²×¿Æ»¹û°æÈí¼þappÒ»Ó¦¾ãÈ«¡£¶àÌØÈí¼þÕ¾Ö»ÌṩÂÌÉ«¡¢ÎÞ¶¾¡¢ÎÞ²å¼þ¡¢ÎÞľÂíµÄ´¿ÂÌÉ«¹¤¾ßÏÂÔØ
¶àÌØÈí¼þվΪÄúÌṩ×ö×îÐÂÇåÀí»º´æÈí¼þרÌâ,ÔÚÕâÀﰲ׿°æÆ»¹û°æµÈÓ¦ÓÃÓ¦Óо¡ÓУ¬ÕÒ×îÐÂÇåÀí»º´æÈí¼þ¾ÍÀ´¶àÌØÈí¼þÕ¾¡£
¶àÌØÈí¼þ԰ΪÄúÕûÀíÁ˶à¿î´úÂë±à³ÌÈí¼þÈí¼þ£¬ÔÚ¶àÌØÄúÄÜÏÂÔضà¿îÕý¹æµÄ¡¢ÎÞ¶¾Èí¼þ£¬ÆäÖÐÓÐѧϰ±à³Ì¡¢ÕæÔ´Âë¡¢¿ÉÐÅÍøÕ¾µÈApp£¬ÕÒÈí¼þÒ»¶¨ÒªÕÒÕý¹æƽ̨£¬¶àÌØÿһ¿îÈí¼þ¶¼½øÐвéɱ£¬È·±£Èí¼þ°²È«£¬ÏëÒªÕÒ´úÂë±à³ÌÈí¼þÓ¦Ó㬸ϽôÀ´¶àÌØÈí¼þÔ°¿´¿´°É¡£