java是什么 java虛擬機是用什么語言編寫的?它的原理誰能通俗的講出來嗎?
java虛擬機是用什么語言編寫的?它的原理誰能通俗的講出來嗎?Java虛擬機的功能是執行Java字節碼,其編碼實現是一個死循環。每個循環都是獲取字節碼并執行字節碼的過程,因此與其他程序沒有本質區別。主
java虛擬機是用什么語言編寫的?它的原理誰能通俗的講出來嗎?
Java虛擬機的功能是執行Java字節碼,其編碼實現是一個死循環。每個循環都是獲取字節碼并執行字節碼的過程,因此與其他程序沒有本質區別。主流的JavaVM大多是用C語言實現的,然后用匯編語言輔助實現,用Java實現JavaVM的情況有一些,但不多。
下面是使用C語言在智能設備中實現虛擬機的一個片段。
此代碼是短加法字節碼的實現。
這段代碼只是獲取字節碼并執行它。你認為JavaVM就是這樣嗎。
為了優化虛擬機的效率,很多人選擇用匯編的方式重寫執行頻率高的代碼。
小結是C語言實現的許多,將與匯編結合起來作為輔助工具。有其他語言,但不是主流。