當前位置:首頁 » 編程軟體 » java編譯成機器碼

java編譯成機器碼

發布時間: 2022-03-09 12:38:42

1. java能不能像c語言不通過JVM虛擬機直接編譯成二進制機器碼,讓計算機直接運行

很少用java,不熟悉,但覺得應該不行吧,java是解釋性語言,即使有一次編譯的機制,但也是即時編譯的。要是像你說的這樣,那也不可能跨平台運行了

2. Java語言源文件編譯生成的位元組碼和機器碼有什麼區別

位元組碼要根據不同的操作系統來轉換用機器碼後再在本操作系統上運行。

3. java編譯後產生 位元組碼,還是 機器碼能不能簡單解釋一下

java虛擬機是可運行java位元組碼的假象計算機 java的跨平台性也是相對與其他編程語言而言的
先介紹一下c語言的編譯過程吧
先是C語言源程序也就是。c的文件
經過C編譯程序編譯後生成windows可執行文件exe文件
然後在windows中執行。。
再介紹java的編譯過程
先是java源程序 擴展名為。java的文件
由java編譯程序將java位元組碼文件 就是class文件
然後在java虛擬機中執行。。

4. java程序編譯後會不會產生machine code

不會,只會生成位元組碼文件。

Java看起來設計得很像C++,但是為了使語言小和容易熟悉,設計者們把C++語言中許多可用的特徵去掉了,這些特徵是一般程序員很少使用的。例如,Java不支持go to語句,代之以提供break和continue語句以及異常處理。

Java還剔除了C++的操作符過載和多繼承特徵,並且不使用主文件,免去了預處理程序。因為Java沒有結構,數組和串都是對象,所以不需要指針。

Java能夠自動處理對象的引用和間接引用,實現自動的無用單元收集,使用戶不必為存儲管理問題煩惱,能更多的時間和精力花在研發上。



(4)java編譯成機器碼擴展閱讀:

Java設計成支持在網路上應用,它是分布式語言。Java既支持各種層次的網路連接,又以Socket類支持可靠的流網路連接,所以用戶可以產生分布式的客戶機和伺服器。網路變成軟體應用的分布運載工具。Java程序只要編寫一次,就可到處運行。

在一個解釋性的環境中,程序開發的標准「鏈接」階段大大消失了。如果說Java還有一個鏈接階段,它只是把新類裝進環境的過程,它是增量式的、輕量級的過程。

因此,Java支持快速原型和容易試驗,它將導致快速程序開發。這是一個與傳統的、耗時的「編譯、鏈接和測試」形成鮮明對比的精巧的開發過程。

5. java源文件需要先解釋成位元組碼文件在編譯成相應的機器碼並運行對嗎

應該不需要再編譯的過程。

6. java程序編譯後會產生位元組碼還是機器碼

Java編譯後是位元組碼,C/C++以前全都是是機器碼。
電腦只能運行機器碼。Java在運行的時候把位元組碼變成機器碼。
C/C++在編譯的時候直接編譯成機器碼。

不過現在微軟的Visual Studio C++ 2005以後的C++也可以編譯成位元組碼,用CLR運行是轉換成機器碼(和Java差不多)。

7. java源程序編譯後生成的源文件是以什麼編碼的,是計算機cpu得機器碼還是其他編碼

這個叫位元組碼,是JVM虛擬機能夠解釋運行的編碼

8. java編譯器將源文件編譯生成的位元組碼是機器碼么

不是,中間碼。

9. java語言為什麼使用的java虛擬機而不是直接翻譯成機器代碼(即和C語言一樣)

目前常用的系統或者平台其實沒有幾個,這種跨平台性,在我看來真的是浪費了。C/C++可以高效率運行是因為直接編譯成機器碼,按說Java語法的也可以的啊,只是它選擇了虛擬機來搞快平台,用喜歡的語法,翻譯成機器碼,豈不是和C/C++一樣的效率了。

熱點內容
河北編程培訓 發布:2025-01-22 08:01:42 瀏覽:591
a星演算法視頻 發布:2025-01-22 07:55:01 瀏覽:878
快手安卓怎麼直播 發布:2025-01-22 07:54:58 瀏覽:937
買伺服器搭建vpn 發布:2025-01-22 07:53:21 瀏覽:808
路由器忘記密碼如何解 發布:2025-01-22 07:38:47 瀏覽:154
5分鍾視頻編譯 發布:2025-01-22 07:36:33 瀏覽:772
asp執行存儲過程 發布:2025-01-22 07:35:55 瀏覽:127
鎮政府搭建伺服器 發布:2025-01-22 07:32:13 瀏覽:1001
安卓系統可以查去過哪裡嗎 發布:2025-01-22 07:25:05 瀏覽:28
三星手機怎麼設置熱點密碼 發布:2025-01-22 07:20:11 瀏覽:39