第一節Java的執行原理
阿新 • • 發佈:2018-12-09
Java執行原理
一、概念
-
在Java中引入了虛擬機器的概念,在編譯程式和機器之間加入了一層抽象的虛擬的機器。
-
這臺虛擬的機器在任何平臺上都提供給編譯程式一個共同的介面。編譯程式只需向虛擬機器生成虛擬機器能夠理解的程式碼,然後由直譯器來把虛擬機器程式碼轉換為特定系統的機器碼執行。
-
在Java中,這種供虛擬機器理解的程式碼叫做位元組碼(class檔案的內容),它不面向任何特定的處理器。
-
Java源程式經過編譯器編譯後變成位元組碼,位元組碼由虛擬機器解釋執行,虛擬機器將每一條要執行的位元組碼送給直譯器。
-
直譯器將其翻譯成特定機器上的機器碼,然後在特定的機器上執行。
-
執行過程 java編譯器 (javac編譯) → 虛擬機器(解釋執行) → 直譯器(jvm翻譯) → 機器碼
-
編譯器:把源程式的每一條語句都編譯成機器語言,並儲存成二進位制檔案,這樣執行時計算機可以直接以機器語言來執行此程式,速度很快
-
直譯器:只在執行程式時,才一條一條的解釋成機器語言給計算機來執行,所以執行速度是不如編譯後的程式執行的快的
二、JRE 和 JDK
- JRE:java執行時環境,包含了java虛擬機器,JVM,java基礎類庫。是使用java語言編寫的程式執行所需要的軟體環境。
- JDK:java開發工具包,是程式設計師使用java語言編寫java程式所需的開發工具包。