Compiled from "Class1.java" public class Class1 { public Class1(); Code: 0: aload_0 1: invokespecial #8 // Method java/lang/Object."<init>":()V 4: return public void aff8(); Code: 0: getstatic #15 // Field java/lang/System.out:Ljava/io/PrintStream; 3: ldc #21 // String 8 5: invokevirtual #23 // Method java/io/PrintStream.println:(Ljava/lang/String;)V 8: return public void aff9(); Code: 0: getstatic #15 // Field java/lang/System.out:Ljava/io/PrintStream; 3: ldc #30 // String 9 5: invokevirtual #23 // Method java/io/PrintStream.println:(Ljava/lang/String;)V 8: return }
Compiled from "Class2.java" public class Class2 { public Class2(); Code: 0: aload_0 1: invokespecial #8 // Method java/lang/Object."<init>":()V 4: return public void aff1(); Code: 0: getstatic #15 // Field java/lang/System.out:Ljava/io/PrintStream; 3: ldc #21 // String 1 5: invokevirtual #23 // Method java/io/PrintStream.println:(Ljava/lang/String;)V 8: return public void aff2(); Code: 0: getstatic #15 // Field java/lang/System.out:Ljava/io/PrintStream; 3: ldc #30 // String 2 5: invokevirtual #23 // Method java/io/PrintStream.println:(Ljava/lang/String;)V 8: new #32 // class Class1 11: dup 12: invokespecial #34 // Method Class1."<init>":()V 15: astore_1 16: aload_1 17: invokevirtual #35 // Method Class1.aff8:()V 20: return public void aff3(); Code: 0: getstatic #15 // Field java/lang/System.out:Ljava/io/PrintStream; 3: ldc #41 // String 3 5: invokevirtual #23 // Method java/io/PrintStream.println:(Ljava/lang/String;)V 8: return }
invokevirtualqui te permettent d'obtenir les méthodes appelées à l'intérieur d'une méthode.