此代码无效:
interface Foo
{
public void foo(final String string);
}
public class Bar implements Foo
{
// Error: does not override.
@Override public void foo(final Object object)
{
}
}
因为 everyString
显然是 an ,Object
所以我希望这段代码非常好:任何依赖于在实际使用.foo()
String
foo()
Object
但是,似乎方法签名必须与它们覆盖的方法的签名相同。为什么?