内部类的访问规则:
1.内部类可以直接访问外部类的成员,包括私有。之所以可以访问外部类的成员,是因为内部类中持有外部类的引用。格式为: 外部类名.this
2.外部类要访问内部类,必须建立内部类的对象。
访问格式:
1.当内部类在成员位置上时,且不是私有,可以在外部其他类中直接建立内部类对象。
格式为:
外部类名.内部类名 变量名 = new 外部类名().new 内部类名();
2.当内部类在成员位置上时,就可以被成员修饰符修饰。当内部类被static 修饰后只能放为外部类中被static 修饰的成员或变量。
注意:当内部类中定义了静态成员,该内部类必须是静态的。
当外部类中的静态方法访问内部类时,内部类也必须是静态的。
内部类定义在局部时:
1.不可以被成员修饰符修饰
2.可以直接访问外部类中的成员,但是不可以访问它所在的局部中的变量,只能访问被final修饰的局部变量。 |