腳本語言和JAVA語言運行機制的區別

腳本語言和JAVA語言運行機制的區別

腳本語言

    腳本語言一般都有相應的腳本引擎來解釋執行,需要解釋器才能運行。腳本語言有很多種,解釋器也有很多種,所以不同的腳本需要不同的解釋器,只有腳本與解釋器對應,才能正確解釋腳本。

    python 爲例:
    python 源碼不需要編譯成二進制代碼,它可以直接從源代碼運行程序。當我們運行 python 文件程序的時候,python 解釋器將源代碼轉換爲字節碼,然後再由 python 解釋器來執行這些字節碼。這也是Python代碼無法運行的像編譯語言一樣快的原因。

    腳本語言運行只需要直接運行源代碼便可。

這裏寫圖片描述

JAVA 語言

    Java 是編譯型和解釋型語言的結合體

    由 Java 語言編寫的程序需要經過編譯來生成字節碼(也就是 .class 文件),但這種字節碼不是可執行性的,所以再由 Java 解釋器( JVM )來解釋執行。JAVA 虛擬機,即 JVM ( Java Virtual Machine )負責解釋行字節碼文件。所有平臺上的 JVM 向編譯器提供相同的編程接口,而編譯器只需要面向虛擬機,生成虛擬機能理解的代碼,然後由虛擬機來解釋執行。

JAVA 的執行過程:
    在 Java 開發環境中進行程序代碼的輸入,生成 .java 的 Java 源文件。再由 Java 編譯器對源文件編譯成字節碼(.class 文件),最後再由 JVM 將字節碼解釋成機器碼執行並顯示運行結果。

    JAVA 語言既不是純粹的編譯語言,也不是純粹的解釋性語言。所以運行 JAVA 程序必須經過編譯 、運行兩個步驟。

這裏寫圖片描述

發佈了40 篇原創文章 · 獲贊 15 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章