【发布时间】:2011-11-26 03:23:03
【问题描述】:
可能重复:
Final arguments in interface methods - what’s the point?
在尝试做一些实验时,我遇到了this page 中描述的问题。
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 关键字?以及如何强制子类在其方法中使用最终变量?
【问题讨论】:
-
final不是方法签名的一部分。子类的方法如何实现它与接口无关。
标签: java final method-signature