微信公眾號:bugstack蟲洞棧,歡迎您的關(guān)注&獲取源碼!https://bugstack.cn
JVM是Java Virtual Machine(Java虛擬機(jī))的縮寫,JVM是一種用于計算設(shè)備的規(guī)范,它是一個虛構(gòu)出來的計算機(jī),是通過在實(shí)際的計算機(jī)上仿真模擬各種計算機(jī)功能來實(shí)現(xiàn)的。
本專題主要介紹如何通過java代碼來實(shí)現(xiàn)JVM的基礎(chǔ)功能(搜索解析class文件、字節(jié)碼命令、運(yùn)行時數(shù)據(jù)區(qū)等),從而讓java程序員通過最熟知的java程序,學(xué)習(xí)JVM是如何將java程序一步步跑起來的,按照《java虛擬機(jī)規(guī)范》與go語言版的《自己動手寫Java虛擬機(jī)》實(shí)現(xiàn)java版虛擬機(jī)案例如下;
章節(jié)列表:
用Java實(shí)現(xiàn)JVM第一章《命令行工具》
用Java實(shí)現(xiàn)JVM第二章《搜索class文件》
用Java實(shí)現(xiàn)JVM第三章《解析class文件》
用Java實(shí)現(xiàn)JVM第四章《運(yùn)行時數(shù)據(jù)區(qū)》
用Java實(shí)現(xiàn)JVM第五章《指令集和解釋器》
用Java實(shí)現(xiàn)JVM第六章《類和對象》
用Java實(shí)現(xiàn)JVM第七章《方法調(diào)用和返回》
用Java實(shí)現(xiàn)JVM第八章《數(shù)組和字符串》
用Java實(shí)現(xiàn)JVM第九章《本地方法調(diào)用》
用Java實(shí)現(xiàn)JVM第十章《異常處理》
附:易用于拓展學(xué)習(xí)
用Java實(shí)現(xiàn)JVM第三章《解析class文件》附[classReader拆解]