×

JAVA虛擬機是用什么語言寫的

  • 作者:新網(wǎng)
  • 來源:新網(wǎng)
  • 瀏覽:100
  • 2018-05-11 15:19:26

JAVA中就虛擬機是其他語言開發(fā)的,用的是C語言加上匯編語言,基于此之上就是JAVA本身了,虛擬機只是一個解析的作用。JAVA并不比C語言慢,說JAVA慢一般是九十年代那時候的JAVA。

   JAVA中就虛擬機是其他語言開發(fā)的,用的是C語言加上匯編語言,基于此之上就是JAVA本身了,虛擬機只是一個解析的作用。JAVA并不比C語言慢,說JAVA慢一般是九十年代那時候的JAVA。

blackfriday.jpg

<div>  在一段優(yōu)秀的JAVA程序和C程序執(zhí)行效率上來比較是沒有多大差距的 并且現(xiàn)在JAVA已經(jīng)可以像C語言那樣,直接編譯為可執(zhí)行文件(不用虛擬機,跨平臺為代價)了
  不知道你看過 卓越編程之道二(運用底層思維編寫高級代碼) 沒有,那里面詳細的講述了高級語言從編寫到編譯執(zhí)行的過程,通過目標文件的反匯編對比,發(fā)現(xiàn)C,C++,JAVA,dephi等語言在同等質(zhì)量下的目標文件長度上基本上沒多大區(qū)別,一門語言的運行速度快慢,與你編寫代碼過程中是否符合編譯器規(guī)則息息相關(guān)。 有空你可以去看看這本書。
  Java底層實現(xiàn)是用C語言寫的,因為做了很多封裝,所以比C語言速度慢?
  JVM是c寫的,所以對JVM常用的攻擊就是buffer overflow。
  c語言寫的, java6.0都已經(jīng)開源了。
  在windows平臺的JVM實現(xiàn)是用VC寫的,你下載的JDK其實都有一個src.zip,那就是Java的源碼 。
  原始是用C寫的,如javac命令等,后面的功能是java自身寫的,如api,現(xiàn)在大多都開源了,有興趣可以看看那個項目,叫openjdk,你也可以提供代碼,說不定后續(xù)版本會采用。

免責聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權(quán),也不承認相關(guān)法律責任。如果您發(fā)現(xiàn)本社區(qū)中有涉嫌抄襲的內(nèi)容,請發(fā)送郵件至:operations@xinnet.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

免費咨詢獲取折扣

Loading