JNI的数据类型和类型签名

2017-08-01  本文已影响76人  daking

JNI的数据类型

基本类型

JNI类型 Java类型 描述
jbyte byte 有符号,8位,整型
jshort short 有符号,16位,整型
jint int 有符号,32位,整型
jlong long 有符号,64位,整型
jfloat float 32位,浮点型
jdouble double 64位,浮点型
jboolean boolean 无符号,8位,整型
jchar char 无符号,16位,整型
void void N/A

引用类型

JNI类型 Java类型 描述
jclass Class
jobject Object Java对象
jstring String 字符串
jobjectArray Object[] 对象数组
jbyteArray byte[] byte数组
jshortArray short[] short数组
jintArray int[] int数组
jlongArray long[] long数组
jfloatArray float[] float数组
jdoubleArray double[] double数组
jbooleanArray boolean[] boolean数组
jcharArray char[] char数组
jthrowable Throwable Throwable

jmethodID、jfieldID

  1. jmethodID可用于获取类中函数的标识,然后通过此标识来调用函数。

  2. jfieldID可用于获取类中变量的标识,然后通过此标识来读写变量。

JNI的类型签名

类和对象的签名

基本数据类型的签名

Java类型 签名
byte B
short S
int I
long J
float F
double D
boolean Z
char C
void V

数组的签名

Java类型 签名
Object[] [Ljava/lang/Object
String[] [Ljava/lang/String
byte[] [B
short[] [S
int[] [I
long[] [J
float[] [F
double[] [D
boolean[] [Z
char[] [C

方法的签名

我的博客

上一篇 下一篇

猜你喜欢

热点阅读