1 package test_13_1; 2 3 public class Outer { 4 5 class Inner { 6 7 public Inner() { 8 9 System.out.println("this is inner"); 10 } 11 12 public void print() { 13 14 System.out.println("this is Inner.print()"); 15 } 16 } 17 18 public Inner inner() { 19 20 return new Inner(); 21 } 22 23 public static void main(String[] args) { 24 25 Outer outer = new Outer(); 26 // 如果想从外部类的非静态方法以外的任意位置创建某个内部类的对象 27 // 那么必须具体地指明这个对象的类型:OuterClassName.InnerClassName 28 Outer.Inner inner = outer.inner(); 29 inner.print(); 30 } 31 }
结果如下:
this is inner
this is Inner.print()