public class HelloWorld extends java.lang.Object: public void (): ALOAD_0 // HelloWorld this (line 5) INVOKESPECIAL java.lang.Object. ()V constructor-execution(void HelloWorld.()) | BIPUSH 1 | ANEWARRAY java.lang.Object | ASTORE_1 | ALOAD_1 | BIPUSH 0 | ALOAD_0 | AASTORE | NEW HelloWorld$AjcClosure1 | DUP | ALOAD_1 | INVOKESPECIAL HelloWorld$AjcClosure1. ([Ljava/lang/Object;)V | INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; | POP | RETURN constructor-execution(void HelloWorld.()) end public void () public static void main(String[]): ALOAD_0 ASTORE 5 method-execution(void HelloWorld.main(java.lang.String[])) | BIPUSH 1 | ANEWARRAY java.lang.Object | ASTORE 6 | ALOAD 6 | BIPUSH 0 | ALOAD 5 | AASTORE | NEW HelloWorld$AjcClosure7 | DUP | ALOAD 6 | INVOKESPECIAL HelloWorld$AjcClosure7. ([Ljava/lang/Object;)V | INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; | POP | RETURN method-execution(void HelloWorld.main(java.lang.String[])) end public static void main(String[]) static final void init$_aroundBody0(HelloWorld): RETURN (line 5) end static final void init$_aroundBody0(HelloWorld) static final java.io.PrintStream out_aroundBody2(): GETSTATIC java.lang.System.out Ljava/io/PrintStream; (line 8) ARETURN end static final java.io.PrintStream out_aroundBody2() static final void println_aroundBody4(java.io.PrintStream, String): ALOAD_0 ALOAD_1 INVOKEVIRTUAL java.io.PrintStream.println (Ljava/lang/String;)V (line 9) RETURN end static final void println_aroundBody4(java.io.PrintStream, String) static final void main_aroundBody6(String[]): field-get(java.io.PrintStream java.lang.System.out) | BIPUSH 0 | ANEWARRAY java.lang.Object | ASTORE_1 | NEW HelloWorld$AjcClosure3 | DUP | ALOAD_1 | INVOKESPECIAL HelloWorld$AjcClosure3. ([Ljava/lang/Object;)V | INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; | CHECKCAST java.io.PrintStream field-get(java.io.PrintStream java.lang.System.out) LDC "hello world" (line 9) ASTORE_3 ASTORE 5 method-call(void java.io.PrintStream.println(java.lang.String)) | BIPUSH 2 | ANEWARRAY java.lang.Object | ASTORE 7 | ALOAD 7 | BIPUSH 0 | ALOAD 5 | AASTORE | ALOAD 7 | BIPUSH 1 | ALOAD_3 | AASTORE | NEW HelloWorld$AjcClosure5 | DUP | ALOAD 7 | INVOKESPECIAL HelloWorld$AjcClosure5. ([Ljava/lang/Object;)V | INVOKESTATIC Aspect.ajc_around (Lorg/aspectj/runtime/internal/AroundClosure;)Ljava/lang/Object; | POP method-call(void java.io.PrintStream.println(java.lang.String)) RETURN (line 11) end static final void main_aroundBody6(String[]) end public class HelloWorld public class HelloWorld$AjcClosure1 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 ALOAD_2 BIPUSH 0 AALOAD CHECKCAST HelloWorld INVOKESTATIC HelloWorld.init$_aroundBody0 (LHelloWorld;)V ACONST_NULL ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure1 public class HelloWorld$AjcClosure3 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 INVOKESTATIC HelloWorld.out_aroundBody2 ()Ljava/io/PrintStream; ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure3 public class HelloWorld$AjcClosure5 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 ALOAD_2 BIPUSH 0 AALOAD CHECKCAST java.io.PrintStream ALOAD_2 BIPUSH 1 AALOAD CHECKCAST java.lang.String INVOKESTATIC HelloWorld.println_aroundBody4 (Ljava/io/PrintStream;Ljava/lang/String;)V ACONST_NULL ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure5 public class HelloWorld$AjcClosure7 extends org.aspectj.runtime.internal.AroundClosure: public void (Object[]): ALOAD_0 ALOAD_1 INVOKESPECIAL org.aspectj.runtime.internal.AroundClosure. ([Ljava/lang/Object;)V RETURN end public void (Object[]) public Object run(Object[]): ALOAD_0 GETFIELD org.aspectj.runtime.internal.AroundClosure.state [Ljava/lang/Object; ASTORE_2 ALOAD_2 BIPUSH 0 AALOAD CHECKCAST [Ljava.lang.String; INVOKESTATIC HelloWorld.main_aroundBody6 ([Ljava/lang/String;)V ACONST_NULL ARETURN end public Object run(Object[]) end public class HelloWorld$AjcClosure7