成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Java編譯過程與c/c++編譯過程有何不同

開發 后端
這里向大家描述一下Java編譯原理和Java編譯過程與c/c++編譯過程不同,Java編譯程序將java源程序編譯成jvm可執行代碼--java字節碼。

你對Java編譯過程和編譯原理,Java編譯程序將java源程序編譯成jvm可執行代碼--java字節碼,并且Java編譯器卻不將對變量和方法的引用編譯為數值引用,也不確定程序執行過程中的內存布局,而是將些符號引用信息保留在字節碼中,由解釋器在運行過程中創立內存布局,然后再通過查表來確定一個方法所在的地址,這樣就有效地保證了java的可移植性和安全性。

Java編譯原理

1、Java編譯過程與c/c++編譯過程不同

Java編譯程序將java源程序編譯成jvm可執行代碼--java字節碼.

c/c++編譯過程:

當C編譯器編譯生成一個對象的代碼時,該代碼是為在某一特定硬件平臺運行而生成的。因此在編譯過程中,編譯程序通過查表將所有對符號的引用轉換為特定的內存偏移量,以保證程序運行。

Java編譯過程:

Java編譯器卻不將對變量和方法的引用編譯為數值引用,也不確定程序執行過程中的內存布局,而是將些符號引用信息保留在字節碼中,由解釋器在運行過程中創立內存布局,然后再通過查表來確定一個方法所在的地址,這樣就有效地保證了java的可移植性和安全性。

2、jvm工作原理

運行jvm字符碼的工作是由解釋器來完成的。解釋執行過程分三步進行:代碼的裝入、代碼的校驗、和代碼的執行。

裝入代碼的工作由“類裝載器classloader”完成。類裝載器負責裝入運行一個程序需要的所有代碼,這也包括程序代碼中的類所繼承的類和被調

用的類。當類裝載器裝入一個類時,該類被放在自己的名字空間中。除了通過符號引用自己名字空間以外的類,類之間沒有其他辦法可以影響其他類。在本臺計算機的所有類都在同一地址空間中,而所有從外部引進的類,都有一個自己獨立的名字空間。這使得本地類通過共享相同的名字空間獲得較高的運行效率,同時又保證它們與從外部引進的類不會相互影響。

當裝入了運行程序需要的所有類后,解釋器便可確定整個可執行程序的內存布局。解釋器為符號引用與特定的地址空間建立對應關系及查詢表。通過在這一階段確定代碼的內布局,java很好地解決了由超類改變而使子類崩潰的問題,同時也防止了代碼的非法訪問。

隨后,被裝入的代碼由字節碼校驗器進行檢查。校驗器可以發現操作數棧益處、非法數據類型轉化等多種錯誤。通過校驗后,代碼便開始執行了。

java字節碼的執行有兩種方式:

1)即時編譯方式:解釋器先將字節編譯成機器碼,然后再執行該機器碼。

2)解釋執行方式:解釋器通過每次解釋并執行一小段代碼來完成java字節碼程序的所有操作。本節關于Java編譯的內容介紹到這里,請關注本節其他相關報道。

【編輯推薦】

  1. Java編譯器中對String對象的優化
  2. 發現Java虛擬機內存泄露問題
  3. 深入Java虛擬機:JVM中的Stack和Heap
  4. Java編譯器對于String常量表達式的優化
  5. Java虛擬機(JVM)中的內存設置詳解

 

責任編輯:佚名 來源: csdn.net
相關推薦

2013-09-03 09:35:10

2010-02-03 09:52:52

C++指針與引用

2009-08-14 15:07:00

C#編譯過程

2010-01-18 10:34:21

C++編譯器

2010-01-21 09:11:38

C++編譯器

2010-10-20 13:43:37

C++編譯器

2010-01-18 09:39:25

C++語言

2013-06-24 15:32:00

c++GCC

2010-01-20 11:15:38

CC++編譯器

2010-02-24 09:45:10

Linux CC++

2010-01-12 16:42:59

C++編譯器

2010-01-20 13:29:40

C++環境

2009-10-09 14:24:27

2010-01-13 18:44:03

C++編譯

2010-01-19 18:24:53

C++編譯環境

2010-01-18 10:28:15

C++編譯器

2013-10-09 14:14:58

C++編譯

2010-01-08 16:00:46

C++編譯器

2010-01-21 09:26:53

CC++編譯器

2021-12-02 14:10:34

ChromeChromium瀏覽器
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美精品91| 97精品久久 | 国产精品成人一区二区三区夜夜夜 | 国产亚洲一区二区三区在线观看 | 久久青| 欧美成人自拍 | h视频在线播放 | 在线免费观看黄a | 久久久999成人 | 99视频在线看 | 91精品国产色综合久久 | 成人二区| 四虎在线观看 | 欧美第一页 | 日韩一区二区三区四区五区 | 亚洲国产高清高潮精品美女 | 狠狠干av | 亚洲综合五月天婷婷 | 国产精品国产三级国产aⅴ中文 | 成人亚洲网站 | 国产精品久久精品 | 天天拍天天插 | 一区二区小视频 | 精品av| 91国内精精品久久久久久婷婷 | 国产精品99久久久久久久久久久久 | 国产精品一区二区欧美 | 成人一区在线观看 | 国产视频一区二区在线观看 | 国产精品久久久久久吹潮 | 成人免费视频在线观看 | 日韩免费一区 | 日韩欧美在线观看 | 91影院| 国产精品不卡 | 午夜在线视频 | 精品少妇一区二区三区日产乱码 | 中文字幕成人网 | 丁香婷婷久久久综合精品国产 | 国内精品免费久久久久软件老师 | 精品国产欧美 |