Java 11可以直接執行原始碼
從JDK 10開始,java可以在命令列啟動的三種方式:執行帶有public static void main(String args)方法的類;執行JAR檔案的main類,或啟動模組的main類。
從Java 11開始,增加一個新的第四種模式:啟動在原始檔中宣告的類:
java HelloWorld.java
上面一行可以直接執行啟動Java原始碼檔案,等同於:
javac -d <memory> HelloWorld.java java -cp <memory> helloWorld |
在這種直接執行原始檔模式下,執行過程如下:
- 在原始檔中找到要執行的類是第一個頂級類。它必須包含標準public static void main(String)方法的宣告 。
- 已編譯的類由自定義類載入器載入,該載入器委託給應用程式類載入器。(這意味著出現在應用程式類路徑上的類不能引用原始檔中宣告的任何類。)
- 已編譯的類在未命名的模組的上下文中執行,似乎是--add-modules=ALL-DEFAULT是有效的(除了--add-module可能已在命令列上指定的任何其他 選項。)
- 出現在命令列上的檔名後面的任何引數都以main明顯的方式傳遞給標準方法。
- 如果應用程式類路徑上有一個類,其名稱與要執行的類的名稱相同,則會出錯。
相關文章
- 可以在Windows的"執行"中直接執行的程式Windows
- 初學者 光碟上的原始碼能直接執行嗎原始碼
- Java執行緒池原始碼及原理Java執行緒原始碼
- java執行緒池原始碼一窺Java執行緒原始碼
- 深入Java原始碼理解執行緒池原理Java原始碼執行緒
- Java原始碼解析 - ThreadPoolExecutor 執行緒池Java原始碼thread執行緒
- Java原始碼解析 ThreadPoolExecutor 執行緒池Java原始碼thread執行緒
- Java執行緒池ThreadPoolExecutor原始碼解析Java執行緒thread原始碼
- 深入淺出Java執行緒池:原始碼篇Java執行緒原始碼
- Java多執行緒之Thread原始碼分析Java執行緒thread原始碼
- Java多執行緒9:ThreadLocal原始碼剖析Java執行緒thread原始碼
- yii直接執行sqlSQL
- JUC(4)---java執行緒池原理及原始碼分析Java執行緒原始碼
- Java排程執行緒池ScheduledThreadPoolExecutor原始碼分析Java執行緒thread原始碼
- 執行流程原始碼分析原始碼
- 程式,程式,執行緒的最形象理解(理解不了可以直接懟我)執行緒
- Java併發包原始碼學習系列:執行緒池ThreadPoolExecutor原始碼解析Java原始碼執行緒thread
- Java併發包原始碼學習系列:執行緒池ScheduledThreadPoolExecutor原始碼解析Java原始碼執行緒thread
- 執行緒池執行模型原始碼全解析執行緒模型原始碼
- oracle 11gR2 amdu 工具可以直接使用Oracle
- 詳解Java執行緒池的ctl(執行緒池控制狀態)【原始碼分析】Java執行緒原始碼
- 深入Mybatis原始碼——執行流程MyBatis原始碼
- 執行緒池原始碼探究執行緒原始碼
- 執行緒池原始碼分析執行緒原始碼
- Mybatis執行流程原始碼分析MyBatis原始碼
- python3類的詳解,原始碼可以直接複製除錯Python原始碼除錯
- 如何在 Java 11 下執行 RocketMQJavaMQ
- 直接用 appium 可以連線真機,用 pycharm 執行指令碼時報錯 “'platformVersion' must be of type string”APPPyCharm指令碼Platform
- oracle執行java程式碼OracleJava
- Zookeeper原始碼分析(一) ----- 原始碼執行環境搭建原始碼
- Java servlet執行的完整流程(圖解含原始碼分析)JavaServlet圖解原始碼
- 通過原始碼理解 Java 執行緒池的核心引數原始碼Java執行緒
- Java執行緒池從使用到閱讀原始碼(3/10)Java執行緒原始碼
- 深入原始碼,深度解析Java 執行緒池的實現原理原始碼Java執行緒
- Java多執行緒類FutureTask原始碼閱讀以及淺析Java執行緒原始碼
- Java 執行緒池架構原理和原始碼解析(ThreadPoolExecutor)Java執行緒架構原始碼thread
- 甲骨文:XP上依舊可以執行JavaJava
- 面試官:Java執行緒可以無限建立嗎?面試Java執行緒