<rp id="wnpn7"><ruby id="wnpn7"></ruby></rp>
<progress id="wnpn7"><track id="wnpn7"><rt id="wnpn7"></rt></track></progress>
<ruby id="wnpn7"></ruby>
<ruby id="wnpn7"><blockquote id="wnpn7"><div id="wnpn7"></div></blockquote></ruby>

    1. <em id="wnpn7"><ruby id="wnpn7"><input id="wnpn7"></input></ruby></em>
      1. <button id="wnpn7"><acronym id="wnpn7"></acronym></button><button id="wnpn7"><acronym id="wnpn7"></acronym></button>

        <rp id="wnpn7"><acronym id="wnpn7"></acronym></rp>

        <li id="wnpn7"><object id="wnpn7"><u id="wnpn7"></u></object></li>
        VB.net 2010 視頻教程 VB.net 2010 視頻教程 python基礎視頻教程
        SQL Server 2008 視頻教程 c#入門經典教程 Visual Basic從門到精通視頻教程
        當前位置:
        首頁 > 編程開發 > Java教程 >
        • java入門之JAVA跨平臺原理

        JAVA的核心機制有兩個:跨平臺機制(JAVA虛擬機),垃圾回收機制

        跨平臺機制實現了:一次編譯,到處運行(與C語言的跨平臺區別在于:C語言是多次編譯多次運行,而這里的跨平臺是指編譯后的文件跨平臺)

        垃圾回收機制實現了:自動回收內存,即無需程序員手動內存回收,避免忘記回收,造成內存泄漏

         

        JAVA跨平臺原理

         在JAVA中,執行一段寫好的代碼會經過編譯和解釋兩個過程:

        編譯 Compile:把整個程序源代碼翻譯成另外一種代碼,然后等待被執行,發生在運行之前,產物是「另一份代碼」。
        解釋 Interpret:把程序源代碼一行一行的讀懂然后執行,發生在運行時,產物是「運行結果」。

        編譯:通過編譯器將.java文件(源文件)編譯成.class字節碼文件(二進制文件),編譯器即javac.exe,實際上也是運行其背后的代碼

        解釋(執行):通過解釋器將.class文件轉換為對應操作系統可以識別的執行文件格式(當前平臺認識的機器碼)并執行,解釋器即java.exe

          注:表面上調用的是java.exe命令,實際上起作用的是虛擬機

            底層動態調用虛擬機(JVM程序)JVM再將.class字節碼文件解釋為當前平臺認識的機器碼并執行。

            虛擬機和解釋器的關系:解釋器是虛擬機的一個重要的組成部分。

         

        通過不同的JVM,JAVA代碼實現了在不同操作系統上的運行,即跨平臺機制。

        JAVA的跨平臺是:一次編譯,到處運行。

        C語言的跨平臺是:直接編譯執行為當前操作系統的機器碼,這樣也實現了不同操作系統上運行的效果。

        即C語言源文件是跨平臺的,但其編譯后的文件無法跨平臺使用,顯而易見,因為C語言是多次編譯多次運行。

        因此,如果跨平臺單指編譯后的文件跨平臺,那么JAVA是跨平臺語言,而C語言不算

         

        如下圖所示:

         

        相關教程
                
        免费看成年人视频大全_免费看成年人视频在线观看