JNI字段描述符“([Ljava/lang/String;)V”
来源:互联网 发布:数据挖掘导论 范明 编辑:程序博客网 时间:2024/06/02 02:12
“([Ljava/lang/String;)V” 它是一种对函数返回值和参数的编码。这种编码叫做JNI字段描述符(JavaNative Interface FieldDescriptors)。一个数组int[],就需要表示为这样"[I"。如果多个数组double[][][]就需要表示为这样 "[[[D"。也就是说每一个方括号开始,就表示一个数组维数。多个方框后面,就是数组 的类型。
如果以一个L开头的描述符,就是类描述符,它后紧跟着类的字符串,然后分号“;”结束。
比如"Ljava/lang/String;"就是表示类型String;
"[I"就是表示int[];
"[Ljava/lang/Object;"就是表示Object[]。
JNI方法描述符,主要就是在括号里放置参数,在括号后面放置返回类型,如下:
(参数描述符)返回类型
当一个函数不需要返回参数类型时,就使用”V”来表示。
比如"()Ljava/lang/String;"就是表示String f();
"(ILjava/lang/Class;)J"就是表示long f(int i, Class c);
"([B)V"就是表示void String(byte[] bytes);
Java 类型
符号
Boolean
Z
Byte
B
Char
C
Short
S
Int
I
Long
J
Float
F
Double
D
Void
V
objects对象
以"L"开头,以";"结尾,中间是用"/" 隔开的包及类名。比如:Ljava/lang/String;如果是嵌套类,则用$来表示嵌套。例如 "(Ljava/lang/String;Landroid/os/FileUtils$FileStatus;)Z"
另外数组类型的简写,则用"["加上如表A所示的对应类型的简写形式进行表示就可以了,
比如:[I 表示 int [];[L/java/lang/objects;表示Objects[],另外。引用类型(除基本类型的数组外)的标示最后都有个";"
例如:
"()V" 就表示void Func();
"(II)V" 表示 void Func(int, int);
"(Ljava/lang/String;Ljava/lang/String;)I".表示 int Func(String,String)
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V” --- 语法定义
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符“([Ljava/lang/String;)V”
- JNI字段描述符对照 “([Ljava/lang/String;)V”
- 转自:数据有意思;数据清洗的经验
- OpenCV学习笔记(1)-----OpenCV 3.1.0环境安装
- theano学习初步(一)
- 第一个工作项目(1)- 忆往昔
- MAC使用brew安装nginx+php+mysql环境
- JNI字段描述符“([Ljava/lang/String;)V”
- android:一个绚丽的注册动画
- 为什么JavaByte类型的取值范围是-128~127
- 马云经典语录大全
- 创建、配置、启动、停止Service
- Android12_Other
- 扎克伯格是如何让员工学会高效工作的?
- 关于spring-boot 同时支持jsp和freemarke的问题
- ABA问题