JNI概述

* Java Native Interface (Java本地接口)

* 完成两种语言之间的沟通和交流

* 让Java可以和C之间相互调用

* JNI 是一个协议,这个协议用来沟通java代码和外部的本地代码(c/c++).通过这个协议,java代码就可以调用外部的c/c++代码外部的c/c++代码也可以调用java代码


为什么要使用JNI?

* java调用底层特殊硬件(调用c语言,车载电脑,胎压监测)

* 复用已经存在的c代码, c语言发展了几十年有很多优秀的代码库 ffmpg,7zip

* 效率上c/c++语言效率更高,java要垃圾回收器回收内存(时间和内存要求严格的场景,赛车游戏转弯) 机器语言汇编 C C++ C+++(Java) C++++(C#)

* java反编译非常容易。c语言反编译不容易.关键业务逻辑需要用c实现

* 历史遗留问题,复用原来pc端的c代


怎么学习JNI?

1. 熟悉Java语言
2. 熟悉C语言
3. JNI的规范
4. NDK (native development kits )

posted on 2017-02-24 19:28  LoaderMan  阅读(226)  评论(0编辑  收藏  举报

导航