gpt4 book ai didi

java - 如何在外部类构造函数中创建内部类的实例

转载 作者:行者123 更新时间:2023-11-30 02:40:43 25 4
gpt4 key购买 nike

我从 C++ 切换到 Java,并且遇到了嵌套类的问题。我想在父类(super class)的构造函数中启动子类的实例。我尝试了这样的方法,但好像是错误的。

public class Aircraft {
public class LandingGear {
}

public Aircraft() {
Aircraft.LandingGear myLandingGear = this.new LandingGear();
}
}

这个想法是,Aircraft 类的每个实例都有一个 LandingGear 子类的实例“myLandingGear”。

最佳答案

对于这个用例,您的嵌套类应该是static(如果它要嵌套的话),然后您只需使用一个简单的new:

public class Aircraft {
public static class LandingGear {
// ----^
}

public Aircraft() {
Aircraft.LandingGear myLandingGear = new LandingGear();
// --------------------------------------^^^^
}
}

当它不是静态时,它是一个内部类,从您的描述来看这不是您想要的。 More on nested classes in this Java tutorial.

但是,除非有充分的理由将 LandingGear 嵌套在 Aircraft 中,否则请考虑将其设为对等体。

关于java - 如何在外部类构造函数中创建内部类的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41806608/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com