📜  需要包含 Outer.Inner 的封闭实例 - Java (1)

📅  最后修改于: 2023-12-03 14:58:43.219000             🧑  作者: Mango

需要包含 Outer.Inner 的封闭实例 - Java

在Java中,如果需要访问一个嵌套类的实例,就需要包含它的外部类实例。这种情况下,我们可以使用Inner类来实现。

Inner类的定义

Inner类是一种嵌套在另外一个类中的类,它可以访问它的外部类实例的所有成员,包括私有成员。

public class Outer {
    // 外部类成员变量
    private int x = 10;
    
    // 内部类
    public class Inner {
        // 内部类成员方法
        public void show() {
            System.out.println("x = " + x);
        }
    }
}

上面的例子中,Inner类嵌套在Outer类中。Inner类可以访问Outer类实例的成员变量x。

创建Inner类的实例

要创建Inner类的实例,需要先创建Outer类的实例,然后再通过Outer类实例来创建Inner类的实例。

Outer outer = new Outer();
Outer.Inner inner = outer.new Inner();

上面的代码中,我们首先创建了Outer类的实例outer,然后通过outer实例来创建了Inner类的实例inner。

使用Inner类的实例

一旦创建了Inner类的实例,就可以使用它来访问Outer类实例的成员变量和方法了。

Outer outer = new Outer();
Outer.Inner inner = outer.new Inner();
inner.show(); //输出 x = 10

上面的代码中,我们首先创建了Outer类的实例outer,然后通过outer实例来创建了Inner类的实例inner。最后,我们调用inner实例的show()方法来输出Outer类实例的成员变量x。

总结

在Java中,如果需要访问一个嵌套类的实例,就需要包含它的外部类实例。这种情况下,我们可以使用Inner类来实现。Inner类是一种嵌套在另外一个类中的类,它可以访问它的外部类实例的所有成员,包括私有成员。要创建Inner类的实例,需要先创建Outer类的实例,然后再通过Outer类实例来创建Inner类的实例。一旦创建了Inner类的实例,就可以使用它来访问Outer类实例的成员变量和方法了。