更新時間:2021-04-20 15:35:37 來源:動力節點 瀏覽898次
①源代碼不能直接翻譯成機器語言,而是先翻譯成中間代碼,再由解釋器對中間代碼進行解釋運行;
②程序不需要編譯,程序在運行時才翻譯成機器語言,每執行一次都要翻譯一次;
③解釋性語言代表:Python、JavaScript、Shell、Ruby等
④運行效率一般相對比較低,依賴解釋器,跨平臺性好;
①只須編譯一次就可以把源代碼編譯成機器語言,后面的執行無須重新編譯,直接使用之前的編譯結果就可以;因此其執行的效率比較高;
②編譯性語言代表:C、C++;
③程序執行效率比較高,但比較依賴編譯器,因此跨平臺性差一些;
Java語言是編譯性-解釋性語言,因為其同時具備編譯性和解釋性兩種特性;java文件先編譯成與平臺無關的.class的字節碼文件,然后.class的字節碼文件既可以在Windows平臺上的java虛擬機(JVM)上進行解釋運行,也可以在Linux平臺上的JVM上解釋運行;而JVM的翻譯過程時解釋性的,JVM從.class的字節碼文件中讀出一條指令,翻譯一條指令,然后執行一條指令,這個過程就稱為java的解釋執行;
JVM是一個抽象的計算機,和實際的計算機一樣,它具有指令集并使用不同的存儲區域。它負責執行指令,還要管理數據、內存和寄存器。
可以這樣理解JVM,就像兩支不同的筆,但需要把同一個筆帽套在這兩支筆上面,但是筆不同,肯定套不上去。這時候就需要一個轉換器,這個轉換器向上提供相同的接口,筆帽可以套在這個接口上面,向上提供不同筆的接口,這樣可以套在不同的筆上面,在這里,同一個筆帽就相當于java的字節碼文件(.class),轉換器相當于JVM虛擬機。
以上就是動力節點小編介紹的“Java是什么語言”的內容,希望對大家有幫助,如有疑問,請在線咨詢,有專業老師隨時為您服務。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習