1. 程式人生 > >每天一道Java題[9]

每天一道Java題[9]

public interface jvm image 外部 .cn c代碼 bsp 底層

題目

native關鍵字的作用是什麽?

解答

首先,需了解JNI(Java Native Interface),它是連接Java平臺與本地C代碼的一個API。

技術分享

其次,用native關鍵字聲明的方法,是告訴JVM調用的方法是一個外部定義的方法,也就是本地C代碼定義的一個方法。

總結來說,native關鍵字的具體作用是,用它聲明的方法,並不需要Java代碼自己實現。而是JVM通過JNI來加載本地系統C/C++的DLL,然後調用其中的方法來實現。

發散思維

1.說一下,我們平時用到的哪個方法,是用native關鍵字聲明的?

解答:java.lang.Object源碼中的hashCode方法:

public native int hashCode();

2.說一下,我們平時會在什麽情況下用到native關鍵字?

解答:

  1. 使用操作系統底層的某個特性,不得不通過JNI來訪問。
  2. 訪問一個老系統或者已有的庫,而此庫是用C/C++寫的。
  3. 加快程序的性能。

等等

參考資料

1.Java總Native關鍵字的作用(http://www.cnblogs.com/Qian123/p/5702574.html)

每天一道Java題[9]