扣丁學(xué)堂淺談Java開發(fā)入門之運(yùn)行機(jī)制詳解
2018-09-04 13:46:14
1082瀏覽
今天扣丁學(xué)堂Java培訓(xùn)老師給大家簡(jiǎn)單來介紹一下關(guān)于Java開發(fā)程序的運(yùn)行機(jī)制分為編寫、編譯和運(yùn)行三個(gè)步驟,下面跟隨小編整理的來看一下吧。
1.編寫
編寫是指在Java開發(fā)環(huán)境中進(jìn)行程序代碼的編輯,最終生成后綴名為“.java”的Java源文件。
2.編譯
編譯是指使用Java編譯器對(duì)源文件進(jìn)行錯(cuò)誤排查的過程,編譯后將生成后綴名為.class的字節(jié)碼文件,該文件可以被Java虛擬機(jī)(JVM)的解釋器正常讀取。
3.運(yùn)行
運(yùn)行是指使用Java解釋器將字節(jié)碼文件翻譯成機(jī)器代碼,執(zhí)行并顯示結(jié)果。字節(jié)碼文件是一種和任何具體機(jī)器環(huán)境及操作系統(tǒng)環(huán)境無關(guān)的中間代碼,它是一種二進(jìn)制文件,是Java源文件由Java編譯器編譯后生成的目標(biāo)代碼文件。編程人員和計(jì)算機(jī)都無法直接讀懂字節(jié)碼文件,它必須由專用的Java解釋器來解釋執(zhí)行,因此Java是一種在編譯基礎(chǔ)上進(jìn)行解釋運(yùn)行的語言。
在運(yùn)行Java程序時(shí),首先會(huì)啟動(dòng)JVM,然后由它來負(fù)責(zé)解釋執(zhí)行Java的字節(jié)碼,并且Java字節(jié)碼只能運(yùn)行于JVM之上。這樣利用JVM就可以把Java字節(jié)碼程序和具體的硬件平臺(tái)以及操作系統(tǒng)環(huán)境分隔開來,只要在不同的計(jì)算機(jī)上安裝了針對(duì)于特定具體平臺(tái)的JVM,Java程序就可以運(yùn)行,而不用考慮當(dāng)前具體的硬件平臺(tái)及操作系統(tǒng)環(huán)境,也不用考慮字節(jié)碼文件是在何種平臺(tái)上生成的。JVM把這種不同軟硬件平臺(tái)的具體差別隱藏起來,從而實(shí)現(xiàn)了真正的二進(jìn)制代碼級(jí)的跨平臺(tái)移植。JVM是Java平臺(tái)無關(guān)的基礎(chǔ),Java的跨平臺(tái)特性正是通過在JVM中運(yùn)行Java程序?qū)崿F(xiàn)的。接下來了解一下Java的運(yùn)行流程,如圖所示。
圖中,從編寫出來的Java源文件,到編譯為字節(jié)碼文件,再到通過JVM執(zhí)行程序,最后將程序的運(yùn)行結(jié)果展示給用戶,這是一個(gè)完整的Java運(yùn)行流程。
以上就是關(guān)于扣丁學(xué)堂Java開發(fā)培訓(xùn)之運(yùn)行機(jī)制分析詳解,希望對(duì)剛?cè)腴T學(xué)習(xí)Java開發(fā)的小白同學(xué)有所幫助,最后扣丁學(xué)堂有與時(shí)俱進(jìn)的java課程體系和大量的java視頻教程供學(xué)員觀看學(xué)習(xí),想要學(xué)好java開發(fā)技術(shù)的小伙伴快快行動(dòng)吧??鄱W(xué)堂Java技術(shù)交流群:670348138。
標(biāo)簽:
Java培訓(xùn)
Java視頻教程
Java多線程
Java面試題
Java學(xué)習(xí)視頻
Java開發(fā)