资源详情
课程内容:
本课程是传智播客JA危a课堂系列之一,本课程全面介绍了JNI的知识,包括JNI的含义、功能和应用等。深入了解JNI的知识,掌握JNI的应用,包括在JA危a中如何调用C/C++本地代码及在C/C++本地方法中调用JA危a类等知识。
第1讲:本课程介绍JNI的含义、功能、最简单的JA危a调用C/C++代码的步骤和使用JNI的弊端,并按最简单的步骤编写在JA危a程序中调用本地代码的实例。内容包括:jA危ah工具的用法、按照C/C++头文件来编写C/C++源文件、将C/C++源文件编译成动态连接库(DLL)、在JA危a程序中引入动态连接库等知识
第2讲:本课程讲解在被调用的C/C++函数中如何访问JA危a程序中的类,并编写应用实例。内容包括:在jA危ah工具生成的C/C++函数声明中的JNIEnv类型参数和jobject类型参数的介绍、JA危a类型在C/C++中的映射关系、jclass类型的含义及取得、访问JA危a类中的属忄生与方法,以及使用jA危ap工具获得属忄生和方法的签名。
第3讲:本课程讲解在被调用的C/C++函数中如何取得/设定JA危a属忄生值、如何调用JA危a类的方法和调用JA危a类的父类的方法,并编写应用实例。
第4讲:本课程讲解如何在本地代码中生成和操作JA危a的对象和字符串,并编写应用实例。内容包括:在C/C++本地代码中创建JA危a对象、在C/C++本地代码中访问JA危a的String对象、在C/C++本地代码中创建JA危a的String对象。
第5讲:本课程讲解如何在本地方法中处理JA危a的数组,包括处理基本类型数组和对象类型数组,并编写访问JA危a的基本类型数组和将数组值更新到JA危a中的实例程序。
第6讲:本课程讲解JNI中的全局引用/局部引用/弱全局引用、缓存jfieldID和jmethodID的两种方式,并编写两种缓存方式的示例代码。