这是《Java 哲学》一书中的示例(请记住 FancyToy 扩展了 Toy):Class<FancyToy> ftClass = FancyToy.class;Class<? super FancyToy> up = ftClass.getSuperclass(); //compilesClass<Toy> up = ftClass.getSuperclass(); //doesn't compile 在IDEA中尝试了很多次,只是出现“不兼容类型”的消息。请给我一个提示,为什么我们不能仅使用泛型类型玩具?
1 回答
呼唤远方
TA贡献1856条经验 获得超11个赞
FancyToy 的直接超类可能是另一个类!
你的第二行说:它应该是FancyToy 扩展的某个类。
而你的第三行确切地说明了需要哪个课程。要么 Toy 和 FancyToy 之间实际上存在一个级别,要么编译器在这里没有进行必要的类型推断。
添加回答
举报
0/150
提交
取消