在 JNI 中实现 Java 函数调用 C++ 接口并返回Java 类对象,核心是在 C++ 中创建 Java 对象实例、设置其成员变量,最终返回给 Java 层。以下是可直接执行的步骤化方案,包含完整代码示例和关键注意事项。
一、 准备 Java 侧代码
-
定义待返回的 Java 实体类以
User类为例,包含name、age两个成员变量及 Getter/Setter:java
运行
package com.example.jni; public class User { private String name; private int age; public User() {} // 必须保留无参构造方法,C++层需要调用 public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } } -
定义 JNI 调用接口类声明 native 方法,返回值为
User类型:java
运行
package com.example.jni; public class JNIUserManager { static { System.loadLibrary("UserNative"); // 加载C++编译的动态库 } // 声明native方法:调用C++接口返回User对象 public na


9317

被折叠的 条评论
为什么被折叠?



