根據Java社區正在進行的一項提議,Java將獲得一個處理Java類文件的API。類文件 API 提案草案要求提供用于解析、生成和轉換 Java 類文件的 API。這個類文件庫最初將作為 ASM Java 字節碼操作框架的內部替代品。最終,ASM 將從 JDK 中完全刪除。對java感興趣的同學可以參加java培訓,你可以學會更多的java新技術。
類文件 API提議指出,類文件生成、解析和插裝在Java生態系統中無處不在,有許多工具和庫需要處理類文件。框架經常執行動態字節碼插裝。該提案指出,JDK應該為讀取、寫入和轉換Java類文件提供準確、完整、最新、高性能的API。
API的設計目標和原則包括用不可變對象表示所有的類文件實體,比如方法和字段。用戶驅動的導航也是一個目標。激發對Java類文件庫需求的因素包括:
l JDK 整合,JDK 本身在處理類文件方面很重要。JDK 使用 ASM 存在固有的延遲。在java培訓中,也有關于Java類文件API的學習課程,理論知識+實踐項目,雙管齊下,學以致用,讓你深入淺出地學習java。
l 框架和運行JDK之間的版本偏差。處理類文件的應用程序和框架通常捆綁了一個類文件庫,比如ASM。但是,因為新的類文件特性可以出現在JDK的任何版本中,所以應用程序和框架會更頻繁地遇到比它們所捆綁的庫更新的類文件,從而導致運行時錯誤,或者導致框架試圖解析未來的類文件格式。開發人員想要一個運行JDK時保持最新的類文件庫。
l JVM 和類文件格式現在比以前發展得更快。雖然有些演變很簡單,但有些演變更復雜,例如 Project Valhalla 帶來了新的字節碼、字段描述符和驗證規則。
l 自從ASM問世以來,這門語言已經有了很大的改進。
計劃要求最初將 ASM 替換為 JDK 的運行時依賴項,而不會造成不可接受的性能損失。另一個目標是替換編譯器和 JDK 工具使用的內部類讀取器庫。最終,一系列框架和應用程序應該能夠使用該庫作為 ASM、cglib 和其他字節碼庫的替代品。通過java培訓學習,有系統規范的課程和明確清晰的學習路線,讓你快速掌握java更多知識和技能。