jvm java 方法描述符的解析
()V
(D)Ljava/lang/Double;
(Ljava/lang/Object;)V
(ILjava/lang/String;DFZ)V
(D)Ljava/lang/Double;
(D)Ljava/lang/Double;
(I)Ljava/lang/Integer;
()J
在解析class文件中的方法时,会解析出上面的字符串,每一行代表描述一个方法的入参类型,数量和返回值
基本规则
(这里的是方法的参数)这里的是方法的返回值
栗子:
int test(int a)
解析出来是
(I)I
int test(int a,double x)
解析出来是
(ID)I
上面的栗子用的是基本的数据类型,如果是类-类型(引用类型)就是这样
栗子
int test(int a,String s)
解析出来是
(Ijava/lang/String;)I
是不是超简单啊?来吧 贡献代码吧。。。
https://github.com/anons-org/nada
数据类型在JVM中的定义
B | byte |
C | char |
D | double |
F | float |
I | int |
J | long |
S | short |
Z | boolean |
V | void |
L | 对象类型,如Ljava/lang/Object |
对于数组类型,每一个维度都是使用一个前置的"["字符来描述,如 [Ljava/lang/String , 或者 [[I
Rust编程语言群 1036955113
java新手自学群 626070845
java/springboot/hadoop/JVM 群 4915800
Hadoop/mongodb(搭建/开发/运维)Q群481975850
GOLang Q1群:6848027
GOLang Q2群:450509103
GOLang Q3群:436173132
GOLang Q4群:141984758
GOLang Q5群:215535604
C/C++/QT群 1414577
单片机嵌入式/电子电路入门群群 306312845
MUD/LIB/交流群 391486684
Electron/koa/Nodejs/express 214737701
大前端群vue/js/ts 165150391
操作系统研发群:15375777
汇编/辅助/破解新手群:755783453
大数据 elasticsearch 群 481975850
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
java新手自学群 626070845
java/springboot/hadoop/JVM 群 4915800
Hadoop/mongodb(搭建/开发/运维)Q群481975850
GOLang Q1群:6848027
GOLang Q2群:450509103
GOLang Q3群:436173132
GOLang Q4群:141984758
GOLang Q5群:215535604
C/C++/QT群 1414577
单片机嵌入式/电子电路入门群群 306312845
MUD/LIB/交流群 391486684
Electron/koa/Nodejs/express 214737701
大前端群vue/js/ts 165150391
操作系统研发群:15375777
汇编/辅助/破解新手群:755783453
大数据 elasticsearch 群 481975850
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。