Dalvik字节码的类型方法与字段表示方法

Dalvik字节码的类型、方法与字段表示方法

 

1.类型

 

基本类型——》

引用类型——》对象与数组

 

Dalvik字节码类型描述符

取第一个字母大写,黄色为特殊

语法     含义

V

void

Z

Boolean

B

byte

S

string

C

char

I

int

J

long

F

float

D

double

L

Java类型组

[

数组类型

 

Dalvik寄存器32位大小

L类型表示任何类,如Ljava/lang/String; 相当于Java.lang.String;

[类可以表示所有的基本类型的数组 如 [I 表示 int[]          [[I表示int[][] 维数最大为255个

如[Ljava/lang/String/; 可以表示Java中的字符串数组

 

 

 

2.方法

 

方法格式如:
 

Lpackage/name/ObjectName;->MethodName(III)Z

 

Lpackage/name/ObjectName;理解为一个类型,MethodName为具体的方法名,(III)Z是方法的签名部分,III为方法的参数(此处为三个整形参数)(连在一起直接写的,读时注意分开看) Z表示返回类型(boolean)

 

试试下面这个例子

(String - 》 Ljava/lang/StringObject -> Ljava/lang/Object)

 

Stringmethod(int , int[][] , int , String ,Object[])

 

method(I[[IILjava/lang/String;[Ljava/lang/Object;)Ljava/lang/String    是不是很简单有套路

 

# virtual methods 表示一个虚方法    #direct method 表示只是一个直接得方法

 

 

3.字段

//不是很理解,暂时没有遇到,以后补充吧

字段的格式如下:

 

Lpackage/name/ObjectName;->FileName:Ljava/lang/String;

 

字段由类型(L) 字段名()与字段类型()组成   冒号隔开:

 

#instance fields 实例字段 #static fields 静态字段

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值