内部类可以直接访问外部类的成员
时间: 2024-06-16 09:03:30 浏览: 90
内部类是定义在另一个类内部的类。它可以直接访问外部类的成员,包括私有成员。这种访问权限是由Java编译器自动实现的。内部类可以分为成员内部类、局部内部类和匿名内部类。
成员内部类是定义在外部类的成员位置上的类。它可以访问外部类的所有成员,包括私有成员。在成员内部类中,可以使用外部类的实例来访问外部类的成员,或者使用外部类的类名加点操作符来访问静态成员。
下面是一个示例代码:
```java
public class OuterClass {
private int outerData;
public void outerMethod() {
InnerClass inner = new InnerClass();
inner.innerMethod();
}
public class InnerClass {
private int innerData;
public void innerMethod() {
outerData = 10; // 直接访问外部类的成员变量
System.out.println("InnerClass: " + outerData);
}
}
}
```
在上面的代码中,InnerClass是OuterClass的成员内部类。在innerMethod方法中,可以直接访问outerData这个外部类的私有成员变量。
阅读全文