Oracle發布了Java SE 9,具有150多個新功能
Oracle發布了Java SE 9,具有150多個新功能。廣泛使用的編程語言的最新版本具有一些新功能和API,可加快大型和小型設備的應用程序開發。同時,Java 9提供的功能可幫助程序員提高應用程序的性能,安全性和可維護性。因此,對於程序員來說,了解Java 9提供的一些關鍵功能變得至關重要。
程序員需要了解Java 9哪些知識?
模塊系統
開發人員現在可以使用對HTML5和JavaScript的更好支持,將JDK分為多個模塊。每個模塊化JAR文件都包含一個模塊描述符。開發人員可以通過require語句定義各種模塊的相互依賴性。模塊化使程序員更容易在缺少額外內存的小型設備上順利運行JVM模塊。同時,它們也只能運行應用程序所需的API和JVM模塊。
提前編譯
Java 9通過提前(AOT)編譯大大改善了代碼編譯過程。即使在虛擬機啟動Java類之前,程序員也可以利用AOT編譯將Java類編譯為本機代碼。 AOT編譯通過克服即時(JIT)編譯的主要缺點,提高了大型和小型應用程序的性能。與JIT編譯不同,AOT編譯可確保沒有Java方法保持未編譯狀態。
實時打印循環工具
Java 9附帶了一個新的real-eval-print-loop(REPL)命令行工具-Shell。 Shell被設計為具有以交互方式評估聲明性語句和表達式的功能。程序員可以在編譯之前使用Shell來評估Java代碼的質量。他只需輸入一段代碼並收集反饋即可。 Shell甚至可以自動完成製表符並添加所需的終端分號。新的REPL工具使Java與廣泛使用的編程語言(例如Python和Scala)競爭。
更好地支持HTML5和JavaScript
Java 9提供的經過改進的Javadoc文檔工具具有生成HTML5標記的功能。另外,最新版本的編程語言還支持一些新的字符,塊和腳本,這是Unicode 8.0編碼標準的一部分。同時,Java 9帶有改進的輕量級JavaScript引擎,使程序員可以更輕鬆地將JavaScript代碼嵌入Java應用程序中。開發人員可以直接使用JDK提供的Nashorn ECMAScript語法樹的解析器API,直接在各種IDE和框架中啟用ECMAScript代碼分析。
改進的流API
在編寫Java代碼時,程序員使用字符串來表示計算。 Java 8通過提供Streams API加速了流處理。 Java 9附帶了Streams API的改進版本,使開發人員可以通過添加方法根據特定條件從Stream中取出和刪除項目。此外,改進的Streams API的功能還包括創建可為空值的流並在Stream元素上進行迭代的功能。
多分辨率圖像API
Java 9引入了一個新接口-MultiResolutionImage-通過封裝具有不同分辨率的多個圖像來創建單個多分辨率圖像。開發人員可以進一步使用Java 9提供的多分辨率圖像API來獲取單個圖像的各種變體。而且,他們可以使用API根據所需的分辨率選擇特定的圖像。因此,Java程序員現在可以使用單個API創建統一的多分辨率圖像並獲取特定於分辨率的圖像變體。
客戶端API
Java 9完全改變了應用程序進行HTTP調用的方式。它將HttpURLConnection API替換為新的HTTP客戶端API。 HTTP客戶端API同時支持http:// 2和WebSockets。但是,該API當前不是Java SE的一部分。它被實現為孵化器模塊,位於jdk.incubtor命名空間下。但是,HTTP客戶端API支持最新的通信標準,同時克服了HttpURLConnection API的缺點。
Stack-Walking API
在編寫Java代碼時,程序員探索有效地訪問和過濾堆棧tr的方法。 Java的最新版本通過提供Stack-Walking API簡化了堆棧遍歷。新的API使程序員可以更輕鬆地訪問和過濾堆棧跟踪信息。它進一步支持長途步行。因此,程序員無需依賴虛擬機捕獲堆棧信息就可以更輕鬆地訪問和過濾整個堆棧。
數據報傳輸層安全性(DTLS)API
Java 9通過提供用於數據報傳輸層安全性(DTLS)的API來幫助開發人員構建安全的應用程序。該API通過消除數據篡改,偽造消息和竊聽的機會來確保客戶端和服務器通信的安全。此外,它還為各種應用程序提供通信隱私
程序員需要了解Java 9哪些知識?
模塊系統
開發人員現在可以使用對HTML5和JavaScript的更好支持,將JDK分為多個模塊。每個模塊化JAR文件都包含一個模塊描述符。開發人員可以通過require語句定義各種模塊的相互依賴性。模塊化使程序員更容易在缺少額外內存的小型設備上順利運行JVM模塊。同時,它們也只能運行應用程序所需的API和JVM模塊。
提前編譯
Java 9通過提前(AOT)編譯大大改善了代碼編譯過程。即使在虛擬機啟動Java類之前,程序員也可以利用AOT編譯將Java類編譯為本機代碼。 AOT編譯通過克服即時(JIT)編譯的主要缺點,提高了大型和小型應用程序的性能。與JIT編譯不同,AOT編譯可確保沒有Java方法保持未編譯狀態。
實時打印循環工具
Java 9附帶了一個新的real-eval-print-loop(REPL)命令行工具-Shell。 Shell被設計為具有以交互方式評估聲明性語句和表達式的功能。程序員可以在編譯之前使用Shell來評估Java代碼的質量。他只需輸入一段代碼並收集反饋即可。 Shell甚至可以自動完成製表符並添加所需的終端分號。新的REPL工具使Java與廣泛使用的編程語言(例如Python和Scala)競爭。
更好地支持HTML5和JavaScript
Java 9提供的經過改進的Javadoc文檔工具具有生成HTML5標記的功能。另外,最新版本的編程語言還支持一些新的字符,塊和腳本,這是Unicode 8.0編碼標準的一部分。同時,Java 9帶有改進的輕量級JavaScript引擎,使程序員可以更輕鬆地將JavaScript代碼嵌入Java應用程序中。開發人員可以直接使用JDK提供的Nashorn ECMAScript語法樹的解析器API,直接在各種IDE和框架中啟用ECMAScript代碼分析。
改進的流API
在編寫Java代碼時,程序員使用字符串來表示計算。 Java 8通過提供Streams API加速了流處理。 Java 9附帶了Streams API的改進版本,使開發人員可以通過添加方法根據特定條件從Stream中取出和刪除項目。此外,改進的Streams API的功能還包括創建可為空值的流並在Stream元素上進行迭代的功能。
多分辨率圖像API
Java 9引入了一個新接口-MultiResolutionImage-通過封裝具有不同分辨率的多個圖像來創建單個多分辨率圖像。開發人員可以進一步使用Java 9提供的多分辨率圖像API來獲取單個圖像的各種變體。而且,他們可以使用API根據所需的分辨率選擇特定的圖像。因此,Java程序員現在可以使用單個API創建統一的多分辨率圖像並獲取特定於分辨率的圖像變體。
客戶端API
Java 9完全改變了應用程序進行HTTP調用的方式。它將HttpURLConnection API替換為新的HTTP客戶端API。 HTTP客戶端API同時支持http:// 2和WebSockets。但是,該API當前不是Java SE的一部分。它被實現為孵化器模塊,位於jdk.incubtor命名空間下。但是,HTTP客戶端API支持最新的通信標準,同時克服了HttpURLConnection API的缺點。
Stack-Walking API
在編寫Java代碼時,程序員探索有效地訪問和過濾堆棧tr的方法。 Java的最新版本通過提供Stack-Walking API簡化了堆棧遍歷。新的API使程序員可以更輕鬆地訪問和過濾堆棧跟踪信息。它進一步支持長途步行。因此,程序員無需依賴虛擬機捕獲堆棧信息就可以更輕鬆地訪問和過濾整個堆棧。
數據報傳輸層安全性(DTLS)API
Java 9通過提供用於數據報傳輸層安全性(DTLS)的API來幫助開發人員構建安全的應用程序。該API通過消除數據篡改,偽造消息和竊聽的機會來確保客戶端和服務器通信的安全。此外,它還為各種應用程序提供通信隱私
留言
張貼留言