當前位置:首頁 » 編程軟體 » java編譯代碼反譯

java編譯代碼反譯

發布時間: 2025-06-18 09:38:27

java可以通過虛擬機把位元組碼變成本地機器語言嗎

Java編譯器並沒有把源代碼翻譯為目標機器的機器語言程序,而是翻譯成了位元組碼文件。位元組碼文件由Java虛擬機解釋運行。Java解釋器就是Java虛擬機。
Java位元組碼按照Java語言規范,統一了位元組順序等差異(大端還是小端?CISC處理器和其它的RISC處理器是不同的),對編譯器的實現細節也進行了具體規定。這樣就可以在虛擬機中執行了。

❷ 簡述JAVA程序的編輯編譯和運行過程

Java應用程序的開發周期包括編譯、下載、解釋和執行幾個部分。Java編譯程序將 Java源程序翻譯為JVM可執行代碼--位元組碼。Java將符號引用信息保留在位元組碼中,由解釋器在運行過程中創立內存布局,然後再通過查 表來確定一個方法所在的地址。這樣就有效的保證了Java的可移植性和安全性。

運行JVM位元組碼的工作是由解釋器( java命令 )來完成的。解釋執行過程分三部進行:代碼的裝入、代碼的校驗和代碼的執行。裝入代碼的工作由"類裝載器"(class loader)完成。類裝載器負責裝入運行一個程序需要的所有代碼,這也包括程序代碼中的類所繼承的類和被其調用的類。當類裝載器裝入一個類時,該類被放 在自己的名字空間中。除了通過符號引用自己名字空間以外的類,類之間沒有其他辦法可以影響其他類。在本台計算機上的所有類都在同一地址空間內,而所有從外 部引進的類,都有一個自己獨立的名字空間。這使得本地類通過共享相同的名字空間獲得較高的運行效率,同時又保證它們與從外部引進的類不會相互影響。當裝入 了運行程序需要的所有類後,解釋器便可確定整個可執行程序的內存布局。解釋器為符號引用同特定的地址空間建立對應關系及查詢表。通過在這一階段確定代碼的 內存布局,Java很好地解決了由超類改變而使子類崩潰的問題,同時也防止了代碼對地址的非法訪問

熱點內容
途觀l銳界哪個配置好 發布:2025-06-18 13:21:49 瀏覽:153
編程改代碼 發布:2025-06-18 13:16:11 瀏覽:578
iscsi存儲設備 發布:2025-06-18 12:26:28 瀏覽:108
WiFi攝像頭搭建伺服器 發布:2025-06-18 12:19:27 瀏覽:467
linux文件目錄大小 發布:2025-06-18 12:19:25 瀏覽:474
怎樣看安卓手機都去過哪裡 發布:2025-06-18 12:19:22 瀏覽:91
重裝sqlserver 發布:2025-06-18 12:15:27 瀏覽:638
編譯for 發布:2025-06-18 12:09:10 瀏覽:277
語法分析編譯原理 發布:2025-06-18 12:07:43 瀏覽:708
java雙if 發布:2025-06-18 12:03:24 瀏覽:398