Small 语法转 JAVA

转载 2016年06月01日 18:25:09
.class :类名
.super :父类
.source :源文件名
.implements :继承的接口

.field :类成员变量
.method :类方法
.parameter :函数参数 p1,p2...

.locals x :局部变量(个数)

const/16 v0, 0x64 :int v0 = 0x64
const/high16 v0, 0x7f03 :高16赋值
const-wide v0, 0x4024051eb851eb85L
const-string v0, "1111" :字符串

add-int v0, p0, p1 :v0 = p0 + p1(static函数参数 从p0 开始)
sub-int v0, p1, p2 :v0 = p1 + p2(普通成员函数参数从 p1 开始)
mul-int v0, p1, p2 :v0 = p1 * p2
div-int v0, p1, p2 :v0 = p1 / p2

add-int/2addr v0, v1 :v0+v1放到 v0所在的地址
sub-int/2addr v0, p2 :v0-p2放到 v0所在的地址

if-ne :if(x != y)

iput-object v0, p0, Lcom/xyz/smali/SmaliActivity;->string:Ljava/lang/String; :成员变量 v0 = string;
iget-object v0, p0, Lcom/xyz/smali/SmaliActivity;->mBtn:Landroid/widget/Button; :关联成员变量

sput v0, Lcom/xyz/smali/SmaliActivity;->OK:I :sput 给static变量赋值
sput-wide v0, Lcom/xyz/smali/SmaliActivity;->dou:D :sput-wide 给static的宽字节变量赋值
sput-object v0, Lcom/xyz/smali/SmaliActivity;->sss:Ljava/lang/String;
sget v1, Lcom/xyz/smali/SmaliActivity;->OK:I :关联static变量

invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V : this.super.onCreate();
invoke-static {p1, p2}, Lcom/xyz/smali/SmaliActivity;->add(II)I :调用静态函数 add(p1, p2)
invoke-virtual {v0, p0}, Landroid/widget/Button;->setOnClickListener(Landroid/view/View$OnClickListener;)V :调用虚函数

move-result v0 :前面调用函数后,把结果放到 v0
move-result-object v0 :前面调用函数返回的对象给 v0

check-cast v0, Landroid/widget/Button; :强制类型转换 mBtn = (Button) findViewById(R.id.btn);

return-void :return ;

java冒泡排序法(smallTobig和bigTosmall)

冒泡排序(从大到小) ----------------------------------------------------------------------------------------...
  • u014174328
  • u014174328
  • 2016年07月29日 11:55
  • 203

Java技术大牛之路

打个比方吧,这位牛人23岁毕业,做了两年嵌入式C编程,25岁时,突然对Java的优雅设计情有独钟,而正好这时,公司有个Java项目,Java技术之旅开始了。 1、最开始三个月,开始接触Java,比如接...
  • zjh_1110120
  • zjh_1110120
  • 2016年05月21日 10:18
  • 3821

Android Small插件化框架--类加载实现解析

前言:上一篇已经分析了一下Android Framework的类加载的机制。基于上一篇的分析,这一篇我们来解析一下Small插件化框架的怎么Hook,来实现加载APK里面的类的。...
  • qq_21920435
  • qq_21920435
  • 2017年02月23日 16:15
  • 476

Android Small框架增量升级方案

背景随着业务的发展,安装包的体积也在不断的增大,这时候,如果要版本更新,用户不得不去下载完整的安装包。但是如果使用增量升级方案,用户只需要下载新旧版本的差异包,然后在本地合成就行,这样省时省力。我们可...
  • u013022222
  • u013022222
  • 2016年08月21日 17:59
  • 4751

java新技术

转载:http://lj6684.iteye.com/blog/895010 最近在网上查资料碰到好多没接触过的技术,先汇总在这里备用,以后慢慢吸收   1. J...
  • u013362412
  • u013362412
  • 2017年01月05日 16:00
  • 7244

Introduction to Java Programming

  • 2011年10月26日 17:25
  • 9.96MB
  • 下载

c#和java的一些语法区别

C#中有无符号数,Java没有。 C#中有值类型,且可自己定义值类型的结构体(struct)。 Java中的基本类型(或叫基元类型)即为值类型,但Java没有结构体,所以不能自定义值类型。 ...
  • lingkaigood123
  • lingkaigood123
  • 2011年12月06日 15:24
  • 2682

Java基础应用之基本语法(自动类型转换与强制类型转换)

Java基础应用之基本语法(自动类型转换与强制类型转换) 实例运行结果: -----------------------------------------------------...
  • TengLinhui
  • TengLinhui
  • 2017年06月06日 00:00
  • 316

java常用技术汇总

转载:http://lj6684.iteye.com/blog/895010 最近在网上查资料碰到好多没接触过的技术,先汇总在这里备用,以后慢慢吸收   1. JNA ...
  • An342647823
  • An342647823
  • 2014年09月15日 10:01
  • 7763

Java日志系统

ava有大量的框架用于日志输出,常见的包括slf4j, log4j, logback, logging等. #一、slf4j slf4j只是一个门面(facet),它不包含具体的实现,而是...
  • qing0706
  • qing0706
  • 2016年06月02日 10:58
  • 2471
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Small 语法转 JAVA
举报原因:
原因补充:

(最多只允许输入30个字)