从内部类调用外部类函数[重复]

问题

这个问题在这里已有答案:

  • 从内部类对象10获取外部类对象的答案

我在Java中实现了一个嵌套类,我需要从内部类调用外部类方法。

class Outer {
    void show() {
        System.out.println("outter show");
    }

    class Inner{
        void show() {
            System.out.println("inner show");
        }
    }
}

我怎么称呼Outermethodshow


#1 热门回答(183 赞)

你需要为外部类添加前缀:

Outer.this.show();

#2 热门回答(1 赞)

这应该是诀窍:

Outer.Inner obj = new Outer().new Inner();
obj.show();