在Android中怎样连接Java、C和C++

浏览:665 发布日期:2015/10/16 分类:技术分享
在安卓开发中,Java主要负责常用逻辑和UI功能的实现,而C、C++则完成一些复杂算法以及和底层硬件的交互功能。Java和C、C++经常相互调用,而无论哪种调用方式,都要求开发人员熟悉和掌握与JNI相关的语法和函数。

在Android开发中要想连接贯通Java、C、C++语言,你需要用到JNI。JNI的全称是Java Native Interface,它并不是Android专有的,而是从Java继承来的,但是在Android中,JNI的作用和重要性大大增强了,比如在编译、应用打包、安装、程序装载等各方面都对JNI进行了有力的支持。

Android作为一种嵌入式操作系统,有大量和驱动、硬件相关的功能必须在native层实现,另外一些注重性能、功耗的功能使用C、C++来实现也优于用Java来实现。

Java语言的执行离不开虚拟机,因此在Java代码中调用C、C++的函数时,需要告诉虚拟机哪个方法代表本地的函数,在哪里能找到这个函数,反之也一样。

但这两者还是有一些区别:从Java到C、C++建立的是函数间的关联,而从C、C++到Java必须先得到Java对象的引用,才能调用该对象的方法。

另外因为Java是纯面向对象的语言,所以从C、C++中调用Java必须和对象打交道,而不像C、C++中对象和函数可以混用。
http://yuantuan.com/index/index/waibao
最佳答案
评论( 相关
后面还有条评论,点击查看>>