Java虛擬機規範
- Java語言的規範
Java語言的規範完整定義和描述了Java語言的說有特性,定義了基本語法、類型等,其是上層,其規範完整地讓程序員能夠開發出高質量的軟件程序。
- Java虛擬機規範
Java語言和Java虛擬機有着密切聯繫,但是兩者是完全不同的內容。Java虛擬機是一臺執行Java字節碼的虛擬計算機,它擁有獨立的運行機制,其運行的Java字節碼也未必就由Java語言編譯而來。
Java虛擬機是一個高效的、性能優異的、商用級別的軟件運行和開發平臺。
Java虛擬機規範主要內容大概有以下幾部分:
1. 定義虛擬機的內部結構
2. 定義虛擬機執行的字節碼類型和功能
3. 定義了Class文件結構
4. 定義類的裝載、連接、和初始化
- Java虛擬機的編譯和調試
根據Java虛擬機規範可以有很多的虛擬機實現,如果要對虛擬機進行深入研究,那麼可以自行編譯和調試Java虛擬機。
爲什麼要編譯自己的虛擬機?
1. 可以得到一個debug或者fastdebug版本的虛擬機,其支持更多的虛擬機參數,可以獲取更多的虛擬機內部信息,而這些,正式版的虛擬機是無法獲取使用的。
2. 調試版虛擬機可以用於虛擬機代碼的單步調試,有利於實現對虛擬機的理解。
這裏不對其進行更近一步的學習,我們的重點還是虛擬機的理解與應用