内部类
成员类定义
在类中声明的类,可以被继承
内部类访问修饰符
成员类的访问修饰符可以是所有的访问修饰符
外部类访问修饰符只能是:public/package-access
成员类属于类的成员,所有可以调用外部类的private成员
外部类也可以访问成员类的private成员
内部类的使用
调用一个类中的非静态内部类的静态方法
-
OuterClass.InnerClass.staticMethod();
调用一个类中的非静态内部类的非静态方法
-
OuterClass.InnerClass inner = new OuterClass().new InnerClass(); inner.nonStaticMethod();
调用一个类中的静态内部类的静态方法
-
OuterClass.InnerClass.staticMethod();
调用一个类中的静态内部类的非静态方法
-
OuterClass.InnerClass inner = new OuterClass.InnerClass(); inner.nonStaticMethod();
内部类调用外部类成员
在实例成员类中可以使用 外部类.this 表示外部类对象
-
实例成员类调用外部类实例变量
-
外部类.this.实例变量名
-
-
实例成员类调用外部类静态变量
-
外部类.静态变量名
-
在静态成员类可以使用 外部类. 直接表示外部类静态对象,实例变量需要通过对象调用
-
静态成员类调用外部类静态变量
-
外部类.静态变量名
-
-
静态成员类调用外部类实例变量
-
外部类 对象名 = new 外部类(); 对象名.实例变量名
-