是这样的:
普通的内部类对象的创建:Outter .Inner oi = new Outter().new Inner();
创建内部类对象首先需要要有外部类对象,所以先要有new Outter(),new Outter().new Inner(),表示Inner类是Outter的成员变量,通过new Outter的形式去调用。
而静态的内部类的创建:Outter .Inner oi = new Outter.Inner();
静态的话,可以使用类名调用,Outter.Inner表示的就是内部类的全名
当要访问外部其他类中要访问内部类的非静态成员:new Outter.Inner().function(),通过对象来调用
当要访问外部其他类中要访问内部类的静态成员:Outter.Inner().function(),通过类来调用 |