Java 11 馬上要來了,原定于 9 月釋出,還有不到 3 個月了,敬請期待更多新功能被加入到 11 當中,本文本講的是 JEP 330
這個新特性。
化繁為簡,一個指令編譯運作源代碼
看下面的代碼。
// 編譯
javac Javastack.java
// 運作
java Javastack
在我們的認知裡面,要運作一個 Java 源代碼必須先編譯,再運作,兩步執行動作。而在未來的 Java 11 版本中,通過一個
java
指令就直接搞定了,如以下所示。
java Javastack.java
然而,這也并沒有什麼卵用。我們大部分開發工作都在 IDE 工具中,所有的編譯運作過程都由 IDE 完成的,真正用到指令行來編譯、運作的場景真的非常少。當然,如果你是記事本大神,請收下這個功能。
從另外一面來看,這是不是意味着
javac
要退出曆史舞台了呢?不會。因為,還是需要編譯源代碼的指令的,而不是直接運作。
支援 Shebang #! 符号運作 Java 程式
Shebang #! 這是什麼鬼?這也是
JEP 330
裡面的相關技術,它能支援在 UNIX 系統腳本中運作 Java 程式,如以下代碼所示。
#!/path/to/java --source version
JEP 330 總結
Oracle
JEP 330
這個特性隻是為了為了編譯和運作小型的 Java 應用程式而提供的,而不是使用 Java 變成成能通用性語言。這個特性評審時就飽受争議,但最終達成共識确認會被加入到 Java 11 新版本當中。
參考資料: https://securityonline.info/jdk-11-will-introduce-shebang-symbol/
資料:
成為架構師的十階段學習資料!教程:
史上最強 Spring Boot & Cloud 教程彙總工具:
推薦一款線上創作流程圖、思維導圖軟體掃描關注我們的微信公衆号,回複 "666" 可擷取一套Java并發程式設計高清視訊教程。
image