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 靜態字段

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章