温馨提示×

java 内部类能访问外部类吗

小樊
83
2024-11-15 09:37:48
栏目: 编程语言

是的,Java内部类可以访问外部类的成员(包括私有成员)。内部类是定义在外部类内部的类,因此它可以访问外部类的所有成员。如果内部类是静态的(使用static关键字修饰),则它只能访问外部类的静态成员。

以下是一个简单的示例,说明内部类如何访问外部类的成员:

public class OuterClass {
    private int data = 10;

    class InnerClass {
        public void accessOuterMembers() {
            System.out.println("Accessing outer class private member: " + data);
        }
    }

    public static void main(String[] args) {
        OuterClass outer = new OuterClass();
        OuterClass.InnerClass inner = outer.new InnerClass();
        inner.accessOuterMembers(); // 输出:Accessing outer class private member: 10
    }
}

在这个例子中,InnerClassOuterClass 的内部类。它可以访问外部类的私有成员 data。在 main 方法中,我们创建了一个 OuterClass 的实例和一个 InnerClass 的实例,然后通过内部类实例访问了外部类的私有成员。

0