Java

java内部类如何访问外部变量

小樊
102
2024-08-21 07:08:28
栏目: 编程语言

Java内部类可以访问外部类的成员变量,包括实例变量和静态变量。访问外部类实例变量时,内部类实例必须先创建,而访问外部类静态变量时,内部类可以直接访问。

示例代码如下:

public class OuterClass {
    private int outerVar = 10;
    private static int outerStaticVar = 20;

    class InnerClass {
        public void accessOuterVar() {
            System.out.println("Accessing outerVar from InnerClass: " + outerVar);
        }

        public void accessOuterStaticVar() {
            System.out.println("Accessing outerStaticVar from InnerClass: " + outerStaticVar);
        }
    }

    public static void main(String[] args) {
        OuterClass outer = new OuterClass();
        OuterClass.InnerClass inner = outer.new InnerClass();
        inner.accessOuterVar(); // Output: Accessing outerVar from InnerClass: 10
        inner.accessOuterStaticVar(); // Output: Accessing outerStaticVar from InnerClass: 20
    }
}

在上面的示例中,内部类InnerClass可以访问外部类OuterClass的实例变量outerVar和静态变量outerStaticVar。需要注意的是,内部类实例访问外部类实例变量时,必须先创建外部类实例,然后通过该实例创建内部类实例。

0
看了该问题的人还看了