Java开发中什么情况下要用到JNI技术
1个回答
展开全部
JNI可以使Java代码和本地的C/C++代码进行交互。
为什么要使用JNI技术:
java无法直接操作硬件, c/c++可以操作硬件,并且效率较高。
java在视频处理,游戏渲染等方面效率不及c/c++。
避免重复造轮子, 有大量优秀的库,可以复用。
例如:java图形界面程序在最小化后,无法获取全局的键盘和鼠标事件. 需要JNI实现全局热键功能 . java里获取其他窗口的句柄, 并对其他窗口进行控制,也需要JNI技术.
使用了JNI技术缺点是会导致无法跨平台。 需要根据其他平台,再开发本地代码。
JNI实现起来有点复杂. 所以有了JNA技术, 虽然JNA很强大,但是很多功能还是需要JNI来实现的
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询