1、VC6(CPP)的DLL代码:

#include<stdio.h>
#include "jniZ_JNIjw02.h" JNIEXPORT void JNICALL Java_jniZ_JNIjw02_TestZ (JNIEnv * env, jobject obj)
{
printf("Java_jniZ_JNIjw02_TestZ - 1\n"); // ∵ TestZ() 不是静态函数,∴传进来的就是调用这个函数的对象.
// 否则就传入一个jclass对象表示native方法所在的类
jclass jni02_clazz = env->GetObjectClass(obj);
jfieldID fieldID_prop = env->GetFieldID(jni02_clazz, "propertyZ", "I");
jmethodID methodID_func = env->GetMethodID(jni02_clazz, "FunctionZ", "(ILjava/util/Date;[I)I");
env->CallIntMethod(obj, methodID_func, 0L, NULL, NULL); // invoke ! printf("Java_jniZ_JNIjw02_TestZ - 2\n");
}

2、Java代码:

package jniZ;

import java.util.Date;

public class JNIjw02
{
public int propertyZ;
public int FunctionZ(int _foo, Date _date, int[] _arr)
{
System.out.println("FunctionZ");
return 0;
}
public native void TestZ(); public static void main(String[] args)
{
System.loadLibrary("JNIjwVC6_02");
JNIjw02 jni02 = new JNIjw02();
jni02.TestZ(); /*
ZC: 为什么打印的顺序是这样的? :
FunctionZ
Java_jniZ_JNIjw02_TestZ - 1
Java_jniZ_JNIjw02_TestZ - 2
ZC: 个人觉得应该是这样啊 :
Java_jniZ_JNIjw02_TestZ - 1
FunctionZ
Java_jniZ_JNIjw02_TestZ - 2
*/
}
}

3、Java控制台输出:

FunctionZ
Java_jniZ_JNIjw02_TestZ - 1
Java_jniZ_JNIjw02_TestZ - 2

4、

5、

最新文章

  1. HTTPS Web配置举例
  2. Object.Destroy慎用
  3. Java中内存中的Heap、Stack与程序运行的关系
  4. iOS: 实现苹果的内购
  5. c++ 字符窜切割
  6. UVA10518 - How Many Calls?(矩阵高速幂)
  7. C标准函数库中获取时间与日期、对时间与日期数据操作及格式化
  8. robot_framewok自动化测试
  9. 【ZOJ2760】How Many Shortest Path
  10. 关于python深浅拷贝的个人浅见
  11. numpy 用于图像处理
  12. 机器学习基石笔记:06 Theory of Generalization
  13. mysql初次启动相关配置
  14. asyncio的核心概念与基本架构
  15. HDU6198
  16. 如何移动 nuget 缓存文件夹
  17. HDU6447 网络赛 YJJ&#39;s Salesman(DP + 线段树)题解
  18. Zynq软硬件协同设计 总结一
  19. html5游戏开发--&quot;动静&quot;结合(二)-用地图块拼成大地图 &amp; 初探lufylegend
  20. 第一章 Linux系统入门

热门文章

  1. .NET面试
  2. Html5-Canvas 与 SVG 的比较
  3. atob, slice,bin2hex,escape
  4. Python 一键同步windows和linux数据(基于pscp.exe)
  5. Keras之函数式(Functional)模型
  6. spring整合问题分析之-Write operations are not allowed in read-only mode (FlushMode.MANUAL): Turn your Session into FlushMode.COMMIT/AUTO or remove &#39;readOnly&#39; marker from transaction definition.
  7. Elasticsearch中文搜索环境搭建
  8. pandas(二)函数应用和映射
  9. 在SQLPLUS里显示IP、用户名和实例名
  10. Hbase 学习笔记3----操作以及维护