導航:首頁 > 源碼編譯 > java項目為啥要編譯

java項目為啥要編譯

發布時間:2023-07-19 16:47:20

編譯型和解釋型的區別&java從編譯到執行的過程

Java這個語言很非凡。
二、你可以說它是解釋型的。因為java代碼編譯後不能直接運行,它是解釋運行在JVM上的,所以它是解釋運行的,那也就算是解釋的了。
三、但是,現在的JVM為了效率,都有一些JIT優化。它又會把.class的二進制代碼編譯為本地的代碼直接運行,所以,又是編譯的。
像C、C++ 他們經過一次編譯之後直接可以編譯成操作系統了解的類型,可以直接執行的 所以他們是編譯型的語言。沒有經過第二次的處理 而Java不一樣他首先由編譯器編譯成.class類型的文件,這個是java自己類型的文件 然後在通過虛擬機(JVM)從.class文件中讀一行解釋執行一行,所以他是解釋型的語言,而由於java對於多種不同的操作系統有不同的JVM所以
Java實現了真正意義上的跨平台!
請觀看下面兩張圖 了解一下Java的虛擬機機制:
(1)java語言的編譯--解釋---執行過程
(2)java的虛擬機
定義:編譯型語言:把做好的源程序全部編譯成二進制代碼的可運行程序。然後,可直接運行這個程序。
解釋型語言:把做好的源程序翻譯一句,然後執行一句,直至結束!區別:編譯型語言,執行速度快、效率高;依靠編譯器、跨平台性差些。
解釋型語言,執行速度慢、效率低;依靠解釋器、跨平台性好。
個人認為,java是解釋型的語言,因為雖然java也需要編譯,編譯成.class文件,但是並不是機器可以識別的語言,而是位元組碼,最終還是需要 jvm的解釋,才能在各個平台執行,這同時也是java跨平台的原因。所以可是說java即是編譯型的,也是解釋型,但是假如非要歸類的話,從概念上的定義,恐怕java應該歸到解釋型的語言中。

Ⅱ java文件為什麼需要編譯為class

java為了跨平台,所以需要一個中間平台java虛擬機且程序也要是中宏改間平台運行蔽配判程序,在任何系統只需要裝上java虛擬機就能運行程序。而程序編譯成class位元組碼,這樣任何機器上的java虛擬機都能運行相同的位元組碼,所以。。要賣扒編譯成位元組碼

Ⅲ 運行java程序時,為什麼要先編譯再運行,編譯運行一起進行不行嗎

java講究的是 一次編譯 處處運行,也就是提高了程序的一致性。java的程序之所在不同的操作系統上的運行結果是一樣的,是因為java虛擬機。

所以要運行java都要裝一個叫jdk的東西,裡面有java的虛擬機。這個虛擬機就是來解釋我們寫的代碼。通過這個虛擬機,就實現了代碼的移植。

我們寫好的程序,通過虛擬機,編譯成class文件,然後在運行。但是我們只需要編譯一次即可。

Ⅳ java中編譯的意思,解釋的意思。

Java是編譯的,因為他把源代碼變成了位元組碼,而不是每次都解釋源代碼。

Java是解釋的。因為位元組碼是被JVM負責執行,而不是真正的二進制碼!

Ⅳ java源代碼為什麼要編譯

你現在電腦里的文件是文檔文件確切的說在計算機里也是0和1的序列 但是他和執行程序不是一

個類型的文件 文件是由類型的比如說mp3 是播放聲音的 MP4是播放視屏的 TXT是文檔文件

就是存儲文檔的 在回到問題

.java文件其實就和TXT文件一樣是文檔文件是用來存儲你寫的代碼的

他是拿來給你人看的

你要想讓他變成其可執行程序的文件你就得通過編譯器編譯它

編譯器是按照你寫的代碼把他們翻譯成可執行文件的編碼方式

然後你就可以運行它了

在計算機看來所有的文件都是0和1的組合 應為文件的類型的不同它會用不同的方式解讀它們

具體的java程序。編譯。運行等等環節怎麼完成怎麼解釋 你得慢慢了解 或者有時間我在給你解釋解釋

寫的比較亂 你湊合著看吧

Ⅵ 什麼叫java編譯

就是把.Java文件編譯成.class文件

Ⅶ java源代碼為什麼要編譯

程序設計高級語言的原理都是相似的。JAVA,C,C++,等都類似。
說一下JAVA的:
我們先把自然語言,也就是我們平時的話寫成程序設計高級語言,這是編程
然後再通過編譯器生成class也就是位元組碼文件,這個過程是編譯。此時的class文件我們也可以稱之為二進制碼,就是計算機可識別的0,1文件了。而編譯是計算機內部運行,不需要編程者操作。
.java是以源文件形式存在,是編譯器和我們都可識別的語言。
編譯器識別了.java文件後生成.class文件,是編譯器和計算機可識別的語言。
然後計算機會使同名的.java和.class文件關聯,計算機自己有兩次翻譯過程,而這個過程操作者並不需要操心。之後我們就可以運行.java文件了。

Ⅷ java語言在被設計的時候為什麼會加上 編譯 這一步

java語言在被設計的時候為什麼會加上編譯這一步,其實主要的考慮因素是性能,靜態語言的執行效率比動態語言要高得多。所以需要編譯。

閱讀全文

與java項目為啥要編譯相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:962
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:144
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:736
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:484
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:381
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163