扫码阅读
手机扫码阅读
JNI:取得Java属性和设置Java属性值
![](/theme/default/default/images/main/eye-open.png)
我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。
![](/theme/default/default/images/main/icon-jing.png)
BUG弄潮儿
扫码关注公众号
取得Java属性/设定Java属性值
在获取Java属性对应的jfieldID
后,可以使用一系列JNI函数对Java属性进行操作。对于类实例属性,可以使用如Set/GetBooleanField
,Set/GetByteField
等方法,而对于类静态属性,可用的方法包括Set/GetStaticBooleanField
,Set/GetStaticByteField
等。获取数组类型的属性可以通过GetObjectField
实现,也有专门用于操作数组属性的JNI方法。
案例
在C/C++中修改Java中的属性
在Java代码中定义了TestNative
类和整数属性number
,C++代码演示了如何获取这个属性的类和标识符,并修改它的值。C++代码调用GetIntField
获取属性值,然后使用CallBooleanMethod
与jvalue
数组来调用Java方法。
在C/C++中调用Java中的方法
Java的TestNative
类中定义了一个比较两个双精度浮点数并返回最大值的方法max
。C++代码演示了如何通过JNI获取这个方法的jmethodID
,然后使用CallDoubleMethod
来调用这个方法并获取返回值。
想要了解更多内容?
![](/theme/default/default/images/main/icon-jing.png)
BUG弄潮儿
扫码关注公众号
BUG弄潮儿的其他文章
搭建域名方式访问 Nexus3
搭建域名方式访问 Nexus3
企业DevOps之路:私有镜像仓库 Harbor 搭建
1. Harbor 概述容器技术越来越火,越来越成熟,容器应用的开发和运行始终离不开可靠的镜像管理,虽然 D
企业DevOps之路:Jenkins 流水线
1. Pipeline 概述Pipeline 即流水线,是 jenkins2.X 的新特性,是 jenkin
一日一命令:find 命令详解
find 用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设
技术文章对你也许没什么用,但是希望这篇对你有那么一点启发
再朴实无华的文章也不能唤醒你
加入社区微信群
与行业大咖零距离交流学习
![](https://cdn.easycorp.cn/rongpm/upload/202312/f_39217d624bb2b42ce8f6322ebd7e573a.png)
![](https://cdn.easycorp.cn/rongpm/upload/202312/f_39217d624bb2b42ce8f6322ebd7e573a.png)
软件研发质量管理体系建设
白皮书上线