gpt4 book ai didi

java - 泛型在带有 instanceOf 检查的内部类中表现得很奇怪

转载 作者:搜寻专家 更新时间:2023-11-01 04:02:47 27 4
gpt4 key购买 nike

<分区>

看代码

public class AdnanTestClass<T> {

public void doForTest(Object o){
if (o instanceof TestInnerClass){

}
}

private class TestInnerClass{

}
}

这段代码在 doForTest 中给出了编译时错误方法。它说非法泛型类型。

如果我像这样用外部类限定内部类

    if (o instanceof AdnanTestClass.TestInnerClass){

}

这编译得很好。

if (o instanceof TestInnerClass)如果我删除 <T> 也有效来 self 的类(class)声明。

我不确定我在这里遗漏了什么。是否存在与外部类排位赛的潜在问题。有人可以指出吗?我用带有 Java 8 的 intellij idea 14 做了这个测试。

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