从外部 class 引用内部 class 中的方法

referencing method in the inner class from the outer class

我有下面的代码,尽管 类 并且成员方法是 public 我无法在 methodLMF 中引用 methodHF 而不是 methodBF。我尝试了以下方法:

LMF.this.xxxx //but the methods do not show up

请告诉我如何修复它。

代码:

class LMF {
    LMF() {}

    public methodLMF() { } // should return methodHF+methodBF

    //class HF
    class HF {
        HF() {}

        public methodHF(int x) {x++}
    }

    //class BF
    class BF {
        BF() {}

        public methodBF(int x) {x++}
    }
}

您需要以

的身份访问它

HF hF = this.new HF(); hF.methodHF()

您需要创建 HF 和 BF 的对象才能访问那里的方法。

class LMF {
    LMF() {
    }

    public int methodLMF(int x) {
        return new HF().methodHF(x) + new BF().methodBF(x);
    } // should return methodHF+methodBF

    // class HF
    class HF {
        HF() {
        }

        public int methodHF(int x) {
            return x++;
        }
    }

    // class BF
    class BF {
        BF() {
        }

        public int methodBF(int x) {
            return x++;
        }
    }

    public static void main(String[] args) {
        System.out.println(new LMF().methodLMF(1));
    }
}