.class public LSmaliDemo; .super Ljava/lang/Object; .method static public main([Ljava/lang/String;)V .locals 4 sget-object v0, Ljava/lang/System;->out:Ljava/io/PrintStream; const-string v1, "Hello, Dalvik!" invoke-virtual {v0, v1}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V new-instance v2, Ljava/util/ArrayList; invoke-direct {v2}, Ljava/util/ArrayList;->()V sput-object v2, LSmaliDemo;->list:Ljava/util/ArrayList; const/4 v3, 0x1 invoke-virtual {v2, v3}, Ljava/util/ArrayList;->add(I)V return-void .end method .method public test_data_handling()V .locals 5 new-instance v0, LSmaliDemo; invoke-direct {v0}, LSmaliDemo;->()V const/16 v1, 0x10 iput v1, v0, LSmaliDemo;->dataField:I iget v2, v0, LSmaliDemo;->dataField:I add-int/lit8 v3, v2, 0x2 iput v3, v0, LSmaliDemo;->dataField:I return-void .end method .method public test_arithmetic_logic_operations()V .locals 4 new-instance v0, LSmaliDemo; invoke-direct {v0}, LSmaliDemo;->()V const/4 v1, 0x5 const/4 v2, 0x3 invoke-static {v1, v2}, Ljava/lang/Math;->max(II)I move-result v3 iput v3, v0, LSmaliDemo;->resultField:I return-void .end method .method public test_control_flow_operations()V .locals 3 new-instance v0, LSmaliDemo; invoke-direct {v0}, LSmaliDemo;->()V const/4 v1, 0x1 if-eqz v1, :cond_true goto :cond_false :cond_true sget-object v2, Ljava/lang/System;->out:Ljava/io/PrintStream; const-string v3, "Condition is true" invoke-virtual {v2, v3}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V goto :end_if :cond_false sget-object v2, Ljava/lang/System;->out:Ljava/io/PrintStream; const-string v3, "Condition is false" invoke-virtual {v2, v3}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V :end_if return-void .end method .method public test_high_dex_instructions()V .locals 4 new-instance v0, LSmaliDemo; invoke-direct {v0}, LSmaliDemo;->()V const-string v1, "Hello" invoke-static {v1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String; move-result-object v2 iput-object v2, v0, LSmaliDemo;->stringField:Ljava/lang/String; const/4 v3, 0x3 if-eqz v3, :cond_true_2 goto :cond_false_2 :cond_true_2 sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream; const-string v2, "True branch" invoke-virtual {v1, v2}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V goto :end_if_2 :cond_false_2 sget-object v1, Ljava/lang/System;->out:Ljava/io/PrintStream; const-string v2, "False branch" invoke-virtual {v1, v2}, Ljava/io/PrintStream;->println(Ljava/lang/String;)V :end_if_2 return-void .end method