JAVA運行機制


這一篇我們來簡單理解一下JAVA的運行機制

大概可以分為三大部分

1.編寫程序

2.編譯程序

3.運行程序

 

1.編寫程序

編寫程序就是我們前面說的源代碼

這些源代碼都有特殊的語法

例如main函數

他是jdk中一個比較特殊的函數

他必須要使用特定的語法來編寫

(在前面加上 public  等關鍵字來修飾)

源代碼就像是程序的靈魂,

程序的實現是由源代碼來就決定的

就像一塊橡皮泥,

你想把它變成什么樣子完成由你來決定

 

2.編譯程序

為什么要編譯?

因為 JAVA和大多數語言一樣是一種高級語言

我們編寫好的代碼都被保存成為一個.java的文件

然而我們計算機並不認識(不能運行)這些文件

這就需要把我們編寫好的文件(源代碼)變成計算機可以運行的機器碼(二進制碼)

這個過程就叫做編譯

注意:編譯就是我們前面用到的 javac 命令

它可以將.java文件編譯成一個.class文件(字節碼)

並且class文件是一種與平台無關的文件

 

3.運行程序

上面說到把源代碼編譯成字節碼。

那么就到運行字節碼了

其實我們的JAVA語言有一個非常大的特點就是跨平台

用他們話說就是:一次編譯,到處運行

前面說過class文件是一種與平台無關的文件

它也不可直接運行

那我們怎么運行呢?

這就要講到一個東西jvm(JAVA虛擬機)

它可以將我們的class文件解釋成計算機可以運行的二進制

那我們的jvm是如何運行的呢

我們都知道所有程序只有在內存中才能運行

所以我們在運行JAVA文件的時候(java命令)

首先會在內存中創建一個jvm

然后把硬盤里的class文件加載進來

利用jvm去解釋這些class文件

最后運行程序。

 

 

PS:為什么說JAVA跨平台

1.因為編譯后的class文件只能被jvm所解釋

2.任何平台只要有jvm(JAVA運行環境)就可以解釋這個class文件

3.無論什么平台解釋同一個class文件最后的結果都是一樣的

也就是說我用Windows系統編譯好的class文件,拿來Android(前提要有環境)上運行也是一樣的

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM