为什么会这样编译?
B 在 A 中使用,没有任何通用参数,并且是用 Java 编译的。这是怎么回事?
interface B<T>
{
public T Foo(T value);
}
public class A
{
public B What()
{
return null;
}
public void Foo()
{
B x = What();
x.Foo(123);
}
}
最佳答案
这是为了与 J2SE 5.0 之前的 Java 兼容。您应该收到原始类型警告(注意编译器警告)。
关于java - 为什么这会在 Java 中编译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17266428/