【发布时间】:2013-12-30 14:02:15
【问题描述】:
我有类似的东西:
public abstract class Base{
public abstact T <T> method();
}
public class ExtendingClass extends Base{
public SomeObject method(){
}
}
但是,ExtendingClass#method 有警告 类型安全:ExtendingClass 类型的方法的返回类型 SomeObject 需要未经检查的转换以符合
来自 Base 类型的 T
你能告诉我为什么会这样吗?应该如何处理?
【问题讨论】:
-
对我投反对票 - 您当前的代码示例已损坏。
Base类无法编译。注意:我回滚了一个试图解决这个问题的编辑(但没有)——只有 OP 应该编辑问题中的代码。 -
如果它只是显示问题的一个例子,是否需要?他确实说过“类似”
-
@RossDrew 我想是的,是的。没有提供演示特定问题的代码有一个完整的密切原因。现在,这不是我见过的最糟糕的例子,但我希望 OP 努力做到一点准确性。