深入理解Java中為什麼內部類可以訪問外部類的成員
阿新 • • 發佈:2018-12-26
{ final Outer this$0; flags: ACC_FINAL, ACC_SYNTHETIC Outer$Inner(Outer); flags: Code: stack=2, locals=2, args_size=2 0: aload_0 1: aload_1 2: putfield #10 // Field this$0:LOuter; 5: aload_0 6: invokespecial #12 // Method java/lang/Object."<init>":()V 9: return LineNumberTable: line 5: 0 LocalVariableTable: Start Length Slot Name Signature 0 10 0 this LOuter$Inner; void InnerMethod(); flags: Code: stack=1, locals=2, args_size=1 0: aload_0 1: getfield #10 // Field this$0:LOuter; 4: getfield #20 // Field Outer.outerField:I 7: istore_1 8: return LineNumberTable: line 7: 0 line 8: 8 LocalVariableTable: Start Length Slot Name Signature 0 9 0 this LOuter$Inner; 8 1 1 i I }