在 JNI 中,调用 env->FindClass 如何检索一个内部类? 找到答案了,是加$(内部类名)env->FindClass("test/Test$TestInner") 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 env->FindClass("test.test$TestInner") 楼上错了,是.要用/表示:env->FindClass("test/Test$TestInner") 我一直不搞明白,在c里调用java做什么?哪位说一说 如果有一段逻辑在Java中的调用很多,你会在Java里定义一个方法或类,而在JNI的c里要用到它的处理结果,难道你在C里把这段逻辑再写一边吗? 明白了,那样的话是不是得在c的程序里调用JNI_CreateJavaVM() ,产生一个新的虚拟机,这样的话不是很费内存吗?还是我理解的不对? 不需要调用JNI_CreateJavaVM。FindClass 得到 jclass 之后,就可以调用它的静态方法,如果能得到该类的对象实例的话,还可以操作它。所有这些调用均是在同一个虚拟机中进行的,和进入你的 JNI 的虚拟机是同一个。 但findclass这里找到的方法必须得是加载c这个dll的类,是吧?我试了别的类出错! 如何提高长method的可读性? 关于两个简单的正则表达式问题 如何实现分卷压缩? 求xpdf中文补丁包!!!! 如何获得局域网内的所有计算机IP? JAVA中的sql语句 类扩展的问题 请教一个关于showConfirmDialog返回值的问题 与数据库连接问题 java菜鸟求助 请教在Java中怎样计算两个时间的差值? 请教各位老师一个多线程的程序问题!!!
env->FindClass("test/Test$TestInner")
还是我理解的不对?
FindClass 得到 jclass 之后,就可以调用它的静态方法,
如果能得到该类的对象实例的话,还可以操作它。
所有这些调用均是在同一个虚拟机中进行的,和进入你的 JNI 的虚拟机是同一个。