可能重复:
接口方法中的最终参数 - 有什么意义?
在尝试做一些事情时,我遇到了这个页面中描述的问题。
interface B {
public int something(final int a);
}
abstract class C {
public int other(final int b);
}
class A extends C implements B {
public int something(int a) {
return a++;
}
public int other(int b) {
return b++
}
}
为什么会有这样的功能?我不知道为什么可以通过重写方法将最终参数变为非最终参数。为什么在方法签名中忽略 final 关键字?以及如何强制子类在其方法中使用最终变量?