![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java中的JNI
文章平均质量分 72
retacn
这个作者很懒,什么都没留下…
展开
-
JNI学习笔记一
java 调用本地方法在java类中添加native方法使用javah 生成c/c++头文件 javah.exe 在jdk目录下的bin中 命令格式如下: javah 类的全路径 (workspace中的bin目录下)按照生成的头文件编写c/c++源文件 示例代码如下: #include "cn_yue_jni_TestNative.h"#i原创 2012-09-04 10:25:36 · 386 阅读 · 0 评论 -
JNI学习笔记六
全局引用/局部引用/弱全局引用 java对象传到本地代码时会产生引用,这样就会产生垃圾回收问题 全局引用 Global Reference 跨越当前线程,在多个native中有效,需要手动释放 ReleaseGlobalRef函数释放 示例代码 jobject NewGlobalRef(jobject obj); void DeleteGlobalRef(jobj...2012-09-04 10:29:00 · 98 阅读 · 0 评论 -
JNI学习笔记四
本地代码中创建java对象 //第二个参数为构造方法 jobject NewObject(jclass clazz, jmethodID methodID, ...) 示例代码(使用默认构造器创建对象): jclass clazz_date=ent->FindClass("java/util/Date"); jmethodID mid_date=env->...2012-09-04 10:28:00 · 69 阅读 · 0 评论 -
JNI学习笔记三
访问java类中的属性和方法jfileID 属性jmethodID 方法JNIEnv 的函数GetFieldIDGetStaticFieldIDGetMethodIDGetStaticMethodID 示例代码 env_>GetMethodID(data_Clazz,"<int>","()V") 整体实例方法 java 代码 pub...2012-09-04 10:27:00 · 78 阅读 · 0 评论 -
JNI学习笔记二
本地代码访问java代码JNIEnv类型实际上代表了java环境JNIEnv类中的常用函数 NewObjece NewString New<TYPE> Array Get/Set<TYPE> field Get/SetStatic<TYPE> field Call<TYPE> Method CallS...2012-09-04 10:26:00 · 73 阅读 · 0 评论 -
JNI学习笔记一
java 调用本地方法在java类中添加native方法使用javah 生成c/c++头文件 javah.exe 在jdk目录下的bin中 命令格式如下: javah 类的全路径 (workspace中的bin目录下)按照生成的头文件编写c/c++源文件 示例代码如下: #include "cn_yue_jni_TestNative.h"#include <...2012-09-04 10:25:00 · 60 阅读 · 0 评论 -
JNI学习笔记五
处理数组 基本类型的数组 Get ArrayElements(Array arr,jboolean* isCopied); Release ArrayElements(Array arr,jboolean* isCopied); GetPrimitivArrayCritical( Release ArrayElements(jarray arr,vo原创 2012-09-04 10:29:05 · 370 阅读 · 0 评论 -
JNI学习笔记四
本地代码中创建java对象 //第二个参数为构造方法 jobject NewObject(jclass clazz, jmethodID methodID, ...) 示例代码(使用默认构造器创建对象): jclass clazz_date=ent->FindClass("java/util/Date"); jmethodID mid_date=原创 2012-09-04 10:28:24 · 663 阅读 · 0 评论 -
JNI学习笔记二
本地代码访问java代码 JNIEnv类型实际上代表了java环境 JNIEnv类中的常用函数 NewObjece NewString New Array Get/Set field Get/SetStatic field Call Method CallStatic Method jobject原创 2012-09-04 10:26:26 · 468 阅读 · 0 评论 -
JNI学习笔记六
全局引用/局部引用/弱全局引用 java对象传到本地代码时会产生引用,这样就会产生垃圾回收问题 全局引用 Global Reference 跨越当前线程,在多个native中有效,需要手动释放 ReleaseGlobalRef函数释放 示例代码 jobject NewGlobalRef(jobject obj);原创 2012-09-04 10:29:46 · 847 阅读 · 0 评论 -
JNI学习笔记三
访问java类中的属性和方法 jfileID 属性 jmethodID 方法JNIEnv 的函数 GetFieldID GetStaticFieldID GetMethodID GetStaticMethodID 示例代码 env_>GetMethodID(data_Clazz,"","()V") 整体实例方法原创 2012-09-04 10:27:47 · 694 阅读 · 0 评论 -
JNI学习笔记五
处理数组 基本类型的数组 Get<TPYE> ArrayElements(<TYPE>Array arr,jboolean* isCopied); Release<TPYE> ArrayElements(<TYPE>Array arr,jboolean* isCopied); GetPrimitivArrayCritical(<...2012-09-04 10:29:00 · 67 阅读 · 0 评论