JNI(Java Native Interface)

1 What 什么是JNI(Java Native Interface)

它提供了若干的API实现了Java和其他语言的通信(主要是C&C++)
使得Java和C、C++相互之间完成调用

2 Why 为什么要使用JNI

1 java运行在虚拟机上 JNI可以扩展Java虚拟机的能力,让Java代码可以调用硬件。

例如,下面的车载系统,可以通过屏幕点击,完成对于车子的控制,所以这个时候就需要通过JNI来控制车子中的硬件。


JNI(Java Native Interface)_第1张图片
image.png

2 Java是解释型语言,运行效率相对较低,而C/C++效率高很多。通过JNI就可以把一些耗时操作使用C/C++实现,提高Java运行效率。

3 Java代码编译成的.class文件安全性较差,可以通过JNI把重要的业务逻辑放到C/C++中去实现,C/C++反编译比较困难,安全性较高。

3 How 怎么用JNI

1 java
2 c/c++(能看懂、会调用)--1
3 JNI开发流程 NDK(Native develop Kit)--2,3

你可能感兴趣的:(JNI(Java Native Interface))