gpt4 book ai didi

java - 由于某些中间构造函数,类型 MySuperClass 的封闭实例不可用

转载 作者:搜寻专家 更新时间:2023-10-30 21:21:52 26 4
gpt4 key购买 nike

我试图使用父类(super class)型的内部类,它使用了泛型。并在上面得到了那个奇怪的错误。

class MySuperClass<B> {
class InnerClass {
}

MySuperClass(InnerClass... c) {
}
}

在子类中我尝试实例化它:

class MySubClass extends MySuperClass<String> {
MySubClass() {
super(new InnerClass(), new InnerClass());
}
}

编译器把我搞糊涂了

No enclosing instance of type MySuperClass<B> is available due to some intermediate constructor

为什么?

最佳答案

呵呵,自己找到了答案:

InnerClass 不是静态的,因此必须为 this$ 引用传递 MySuperClass 的实例 - 但在 super() 调用之前它不可用...只需将 InnerClass 设为静态即可解决我的问题。

关于java - 由于某些中间构造函数,类型 MySuperClass<B> 的封闭实例不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7703812/

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