Java语言是基于C语言实现的,Java底层的很多API都是通过JNI(Java Native Interface)
来实现的。通过JNI
接口C/C++
和Java
可以互相调用(存在跨平台问题)。Java可以通过JNI调用来弥补语言自身的不足(代码安全性、内存操作等)。这个看似非常炫酷的特性其实自JDK1.1
开始就有了,但是我们不得不去考虑JNI调用带来的一系列的安全问题!
本章节仍以本地命令执行为例讲解如何构建动态链接库供Java调用,也许很多人是第一次接触这个概念会比较陌生但是如果你了学习过C/C++
或者Android NDK
那么本章节就会非常的简单了。