https://blog.csdn.net/longaiyunlay/article/details/80049440

“([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)

最新文章

  1. Celery的实践指南
  2. 关于装完系统出现a disk read error occurred的解决方法
  3. Node相关参考资料
  4. 在ASP.NET MVC中,使用Bundle来打包压缩js和css
  5. IOS低版本遇到了坑不知道你遇到了没
  6. TSQL--临时表和表变量
  7. yousa_team团队项目 兼职平台 完成展示
  8. Android开发总是难以入门
  9. 项目跑起来之后,一会儿后台就会报错Illegal access: this web application instance has been stopped already. Could not load [com.mchange.v2.resourcepool.BasicResourcePool$1DestroyResourceTask]. The following stack trace
  10. chrome的input默认样式黄色背景以及选中加粗的边框处理
  11. 移植u-boot.2012.04.01
  12. uva 10994
  13. CodeForces 706A Beru-taxi (数学计算,水题)
  14. Jdk5.0中出现的新特性
  15. POJ1789 Truck History(prim)
  16. ceph-deploy install时,远端节点在执行apt-get update命令时失败
  17. iOS耗电量测试
  18. 一脸懵逼学习oracle(图形化界面操作---》PLSQL图形化界面)
  19. java代码理解
  20. MyBatis全局配置文件标签详解

热门文章

  1. Eclipse apk项目创建和项目构架
  2. RxJS——主题(Subject)
  3. Jmeter jmeter-server.bat 无法启动
  4. Flask的上下文管理
  5. GeoGebra 代数输入的提示和技巧
  6. Kubernetes 监控
  7. zabbix监控项字体乱码的处理方法
  8. python的sort和sorted
  9. js--同步运动json上
  10. ffmpeg的源码调试