JNI的基本语法

JNI的类型

1、基本数据类型

以下是java的基本数据类型和jni中的基本数据类型的比较,及各类型的字节。

2、引用类型

Java中不同的引用类型在JNI当中也有对应的引用类型,以下树形表示:

当在C语言中使用时,所有的JNI引用类型都被定义为jobject类型。typedef jobject jclass;

 

jvalue 类型

jvalue类型是一个基本数据类型和引用类型的集合,定义方式如下:

 typedef union jvalue {
     jboolean z;
     jbyte    b;
     jchar    c;
     jshort   s;
     jint     i;
     jlong    j;
     jfloat   f;
     jdouble  d;
     jobject  l;
 } jvalue;

class的说明

(1).类和接口的描述符在java当中使用”.”,如:java.lang.String

而在JNI当中是用”/”,如:java/lang/String

(2).数组类型的引用类型用”[”表示。如  int[](java中的表示法)   ß---à  [I([ 大写的i JNI中的表示法,[ 的个数表示数组的维数  二维则是  [[ I )

 

(3)域的说明,和java比较如下表:

注意:引用类型的域 L开头,并且以”;”作为结尾。数组类型和class说明的一样。

 

(4).Method说明

JNI中的方法的声明规则:先写参数列表,再写返回类型,以下是例子。

 

 

 

猜你喜欢

转载自zhuruenzhe2011-163-com.iteye.com/blog/1630531
JNI