當前位置:首頁 » 編程軟體 » java編譯是為了讓機器讀懂么

java編譯是為了讓機器讀懂么

發布時間: 2024-01-05 12:39:39

java工作原理

Java工作原理
由四方面組成:

(1)Java編程語言
(2)Java類文件格式
(3)Java虛擬機
(4)Java應用程序介面
當編輯並運行一個Java程序時,需要同時涉及到這四種方面。使用文字編輯軟體(例如記事本、寫字板、UltraEdit等)或集成開發環境(Eclipse、MyEclipse等)在Java源文件中定義不同的類 ,通過調用類(這些類實現了Java API)中的方法來訪問資源系統,把源文件編譯生成一種二進制中間碼,存儲在class文件中,然後再通過運行與操作系統平台環境相對應的Java虛擬機來運行class文件,執行編譯產生的位元組碼,調用class文件中實現的方法來滿足程序的Java API調用 。

② 計算機怎麼讀懂java代碼的原理

首先你需要懂得編譯原理這門學科,JDK將java代碼編譯成機器能夠識別的二進制位元組碼,然後用JVM(java虛擬機)來載入這些二進制位元組碼並進行解析(翻譯),然後形成指令並執行。jre其實就是java虛擬機的實現,全名叫做Java
Runtime
Environment

③ 請問java程序在編譯和運行時有什麼區別,系統分別都會做什麼

Java程序的編譯
使用命令: javac *.java
編譯時,會將寫的.java文件(高級語言),生成相應的位元組碼文件.class文件(二進制代碼)
Java程序的執行
使用命令:java *
流程: 載入到 -- 連接 ---- 初始化 ...
運行時,首先會由將相應的.class文件,載入到內存中,並驗證.class文件的有效性,將相應類的Class載入到內存中,並對類中的靜態變數進行初始化操作,然後就由 主 類開始執行
具體的可以看一下 JVM 類載入過程,以及jVM的內存分配機制

④ java為什麼要編譯

因為java的跨平台特性,java所謂的一次編譯,到處運行,關鍵就是在於java的虛擬機,也就是jvm,jvm只認識位元組碼,所以你寫好的java代碼就需要編譯成位元組碼才能在jvm上運行。其實不只是java需要編譯,C也需要編譯,機器本身並不能認識你寫的代碼,它們只認識0、1這樣的位元組碼,所以無論是你用什麼樣的語言編寫的代碼,要想最終在物理機器上運行,都要進行編譯。

⑤ 編譯是具體是什麼概念

簡單的說,就是把機器不能直接理解和執行的程序代碼轉換成機器能直接執行的代碼。
因為機器直接執行的代碼程序員讀懂很費事,編程的話也就會浪費大量的時間。所以有高級語言的產生,高級語言的代碼是程序員容易理解和編程的,但是需要編譯之後才能讓機器執行。
高級語言和低級語言各有各的好處。高級語言易懂易讀,編程方便,而低級語言執行效率高。

⑥ JAVA中: 編譯過的代碼和源代碼的區別是

源代碼就是你在電腦裏手敲進去的那些;
編譯過的代碼其實是你的編譯軟體將你手敲進去的那些代碼「翻譯」成了計算機可以識別讀懂的機器語言,換句話說也就是一堆二進制的代碼。

你寫程序的時候會用到某種軟體(比如java的eclipse,.NET的vs2005、vs2008等),當你要編譯時只需點下軟體的編譯按鈕,軟體會自動給你編譯。

⑦ java編譯器的作用是什麼

java編譯器的作用就是「編譯」,即將java源代碼編譯成中間代碼位元組碼文件。

編譯時,編譯器(java.exe)首先讀入 java 源代碼,然後進行語法檢查,如果出現問題就終止編譯。語法檢查通過後,生成中間代碼即位元組碼。

位元組碼文件是一種和任何具體機器環境及操作系統環境無關的中間代碼,它是一種二進制文件,是Java源文件由Java編譯器編譯後生成的目標代碼文件。

編譯器編譯生成與平台無關的位元組碼文件後,提供給 JVM (Java虛擬機)執行。

⑧ Java是解釋型還是編譯型

有人說Java是編譯型的。因為所有的Java代碼都是要編譯的,.java不經過編譯就無法執行。
也有人說Java是解釋型的。因為java代碼編譯後不能直接運行,它是解釋運行在JVM上的,所以它是解釋型的。對於C和C++,它們經過一次編譯之後,可以由操作系統直接執行,所以它們是編譯型語言。而Java不一樣,它首先由編譯器編譯成.class(位元組碼)文件,然後在通過JVM從.class文件中讀一行解釋執行一行,所以它是解釋型的語言。也正是由於java對於多種不同的操作系統有不同的JVM,所以實現了真正意義上的跨平台。(1)Java語言的編譯-->解釋-->運行過程
(2)JVM到這里,大家應該也都明白了。最後給出編譯型語言和解釋型語言的定義。
定義:編譯型語言:把做好的源程序全部編譯成二進制代碼的可運行程序。然後,可直接運行這個程序。
解釋型語言:把做好的源程序翻譯一句,然後執行一句,直至結束!特點:編譯型語言,執行速度快、效率高;依靠編譯器、跨平台性差。
解釋型語言,執行速度慢、效率低;依靠解釋器、跨平台性好。

熱點內容
oppoa33存儲設置方法 發布:2024-11-17 00:41:54 瀏覽:390
sql的if函數怎麼用 發布:2024-11-17 00:36:52 瀏覽:238
填滿我的世界的伺服器叫什麼 發布:2024-11-17 00:32:16 瀏覽:27
mysql資料庫在哪裡看 發布:2024-11-17 00:25:28 瀏覽:138
電腦上面顯示配置怎麼看 發布:2024-11-17 00:20:17 瀏覽:587
括弧計演算法 發布:2024-11-17 00:06:18 瀏覽:870
筆記本ghost配置是什麼 發布:2024-11-17 00:04:12 瀏覽:335
androidappwidget 發布:2024-11-16 23:27:18 瀏覽:677
圖片加密上傳 發布:2024-11-16 23:24:54 瀏覽:72
騙軟體演算法 發布:2024-11-16 23:21:50 瀏覽:647