JNI——实现Java与C的协同工作(一)

第一部分  JNI简介


     首先是摘自Java SE Doucumentation的官方描述:

        JavaTM Native Interface (JNI)  is a standard programming interface for writing Java native methods and embedding the JavaTM virtual machine* into native applications. The primary goal is binary compatibility of native method libraries across all Java virtual machine implementations on a given platform.


     然后是Wikipedia (en)的介绍:

        The Java Native Interface (JNI) is a programming framework that enables Java code running in aJava Virtual Machine (JVM) to call and be called by native applications (programs specific to a hardware and operating system platform) and libraries written in other languages such as C, C++ and assembly.


     接着插入百度百科的一张图来形象理解JNI:

图案1


     最后是个人的简单理解:

        为什么我们要使用JNI?大家都知道Java做开发方便快捷,而无论开发还是维护的成本都较低,但任何事情都是要付出代价的,Java也不是万能的。当你遇到Java很难解决或是根本无法解决的问题时,最朴素的思想就是能不能借助C/C++等语言来支援它,而此时,JNI便应运而生。

        因此,我认为JNI主要应用在以下两种情况:

        1. Java做不到而用C/C++等能做到的事情;

        2. Java实现很麻烦而用C/C++等很容易做到的事情。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值