91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java的編譯過程分為幾步

發布時間:2020-06-19 11:45:34 來源:億速云 閱讀:320 作者:鴿子 欄目:編程語言

java編譯過程主要分以下幾步:

1、詞法分析: 把源代碼中的字符(各個關鍵字、變量等)轉為標記(Token)集合,單個字符的程序編寫的最小單元,而token是編譯過程的最小單元。

2、語法分析: 將標記(Token)集合構造為抽象語法樹。語法樹的每一個節點都代表代碼中的一個語法結構(如包、類型、接口、修飾符等等)。

3、填充符號表:符號表是有一組符號地址和符號信息構成的表格。填充符號表的過程的出口是一個待處理列表,包含了每一個抽象語法樹(和package-info.java)的頂級節點。

4、插入式注解處理器處理注解: 注解處理器可以增刪改抽象語法樹的任意元素。因此每當注解處理器對語法樹進行修改時,都將重新執行1,2,3步,直到注解處理器不再對語法樹進行修改為止。每一次的循環過程都稱為一次Round。

5、語義分析:對語法樹結構上正確的源程序進行上下文有關的審查。

  • 標注檢查:包括是否變量聲明、變量和賦值類型是否匹配等、常量折疊。

  • 數據和控制流分析:對程序上下文邏輯更進一步驗證。包括變量使用前是否賦值、方法是否有返回值、異常是否被正確處理等。

6、解語法糖: 把高級語法(如:泛型、可變參數、拆箱裝箱等)轉為基礎語法結構,虛擬機運行時不支持這些高級語法。

7、生成字節碼:把語法樹、符號表里的信息轉為字節碼寫到磁盤,同時進行少量的代碼添加和轉換工作。

以上就是javac編譯包含哪幾個過程的詳細內容,更多請關注億速云其它相關文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

昆山市| 蒙阴县| 汾阳市| 鲁山县| 丰都县| 陆良县| 新化县| 社旗县| 开封县| 芷江| 美姑县| 宜阳县| 延吉市| 卓资县| 普兰县| 灌云县| 清镇市| 忻州市| 左贡县| 宣化县| 浦县| 陇西县| 静乐县| 无锡市| 永泰县| 衡阳县| 乡城县| 遵义县| 措勤县| 黄陵县| 山阳县| 安龙县| 钟山县| 汤原县| 杨浦区| 中阳县| 共和县| 蓝山县| 平定县| 南郑县| 靖江市|