<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                JNI,是Java Native Interface的縮寫,中文為Java本地調用。通俗地說,JNI是一種技術,通過這種技術可以做到以下兩點: - Java程序中的函數可以調用Native語言寫的函數,Native一般指的是C/C++編寫的函數。 - Native程序中的函數可以調用Java層的函數,也就是在C/C++程序中可以調用Java的函數。 在平臺無關的Java中,為什么要創建一個和Native相關的JNI技術呢?這豈不是破壞了Java的平臺無關特性嗎?本人覺得,JNI技術的推出可能是出于以下幾個方面的考慮: - 承載Java世界的虛擬機是用Native語言寫的,而虛擬機又運行在具體平臺上,所以虛擬機本身無法做到平臺無關。然而,有了JNI技術,就可以對Java層屏蔽具體的虛擬機實現上的差異了。這樣,就能實現Java本身的平臺無關特性。其實Java一直在使用JNI技術,只是我們平時較少用到罷了。 - 早在Java語言誕生前,很多程序都是用Native語言寫的,它們遍布在軟件世界的各個角落。Java出世后,它受到了追捧,并迅速得到發展,但仍無法對軟件世界徹底改朝換代,于是才有了折中的辦法。既然已經有Native模塊實現了相關功能,那么在Java中通過JNI技術直接使用它們就行了,免得落下重復制造輪子的壞名聲。另外,在一些要求效率和速度的場合還是需要Native語言參與的。 在Android平臺上,JNI就是一座將Native世界和Java世界間的天塹變成通途的橋,來看圖2-1,它展示了Android平臺上JNI所處的位置: :-: ![](http://img.blog.csdn.net/20150802093646109?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center) 圖2-1 Android平臺中JNI示意圖 由上圖可知,JNI將Java世界和Native世界緊密地聯系在一起了。在Android平臺上盡情使用Java開發的程序員們不要忘了,如果沒有JNI的支持,我們將寸步難行! * * * * * **注意,**雖然JNI層的代碼是用Native語言寫的,但本書還是把和JNI相關的模塊單獨歸類到JNI層。 * * * * * 俗話說,百聞不如一見,就來見識一下JNI技術吧。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看