Java内部类调用外部类的方式:直接访问:内部类可直接访问外部类非私有的方法、变量和对象。通过外部类对象:内部类可通过外部类对象实例访问外部类的私有方法、变量和对象。

Java 内部类如何调用:方法简介
Java 中的内部类可以通过以下方法访问外部类的方法、变量和对象:
- 直接访问:内部类中的方法和成员变量可以直接访问外部类的非私有方法、变量和对象。
- 通过外部类对象:内部类的方法和成员变量可以通过外部类对象实例访问外部类的私有方法、变量和对象。
详细说明
直接访问:
立即学习“Java免费学习笔记(深入)”;
- 内部类中的非静态方法可以通过
this关键字直接访问外部类的非私有方法和变量。 - 内部类中的静态方法可以通过外部类名直接访问外部类的非私有静态变量。
示例:
<code class="java">class OuterClass {
private int num = 10;
class InnerClass {
public void accessOuter() {
System.out.println(this.num); // 访问外部类的非私有变量
}
}
}</code>通过外部类对象:
- 内部类中的非静态方法和成员变量可以通过外部类对象实例访问外部类的私有方法、变量和对象。
- 内部类中的静态方法和成员变量可以通过外部类对象实例或外部类名访问外部类的私有静态变量。
示例:
<code class="java">class OuterClass {
private int num = 10;
class InnerClass {
public void accessOuter(OuterClass outer) {
System.out.println(outer.num); // 访问外部类的私有变量
}
}
}</code>











