java - 从外部类引用内部类中的方法

标签 java class inner-classes

我有下面的代码,尽管类和成员方法是公共(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 和 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));
    }
}

关于java - 从外部类引用内部类中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31786454/

相关文章:

java - 无法从内部类转换到类

c# - 拖放文件上传asp.net或java

java - 如何使用 Swing 实现自动完成?

java - 为什么Java接口(interface)可以在这些代码中被实例化?

c++ - 在初始化构造函数时,我一直为创建的对象未定义并期望一个标识符

java - ViewPager 仅在网络调用成功后加载

java - Scala 嵌套表达式不带参数

java - 从android中的并行线程中的大量文本文件加载数据

Java静态字段的使用

kotlin - 内部类中的嵌套类