每天一道Java题[9]
题目
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关键字?
解答:
- 使用操作系统底层的某个特性,不得不通过JNI来访问。
- 访问一个老系统或者已有的库,而此库是用C/C++写的。
- 加快程序的性能。
等等
参考资料
1.Java总Native关键字的作用(http://www.cnblogs.com/Qian123/p/5702574.html)