Inner类定义于Outer类内部,相当于Outer类一个成员变量的位置
定义了成员内部类后,必须使用外部类对象来创建内类对象,而不能直接去new一个内部类对象,即:内部类 对象名 = 外部类对象.new 内部类();
编译后,会发现产生了两个.class文件:
Outer$Inner.class //外部类名$内部类名.class
Outer.class
内部类的创建方法:
在外部类的内部,可以用 Inner inner = new Inner(); 方法直接创建
在外部类外部,必须先创建外部类实例,然后再创建内部类实例,除了上面 Inner inner = new Outer().new Inner()的写法以外,还有 Outer outer = new Outer(); Inner inner = outer.new Inner();的写法