jvm原理

一. javac編譯原理

Javac編譯器任務就是將Java語言規範轉化成Java虛擬機語言規範,完成“翻譯”工作(即將源碼翻譯成字節碼)

1. 詞法分析的結果就是從源代碼中找出一些規範化的Token流(關鍵字之類的)

2. 語法分析的結果就是形成一個符合Java語言規範的抽象語法樹(即將token流按照java語言規範組成語法樹)

3. 語義分析的結果就是將複雜的語法轉化成最簡單的語法,解語法糖、添加默認構造函數、做一些檢查工作之類的,生成一個更加便於操作的語法樹

4. 通過字節碼生成器生成字節碼,根據經過抽象語法樹生成字節碼,也就是將一個數據結構轉化爲另外一個數據結構,就像將所有的中文詞語翻譯成英文單詞後,按照英文語法組裝成英文語句。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章