Argumentos finales en los métodos de interfaz: ¿cuál es el punto?
En Java, es perfectamente legal definirfinal
argumentos en métodos de interfaz y no obedezca eso en la clase implementadora, por ejemplo
public interface Foo {
public void foo(int bar, final int baz);
}
public class FooImpl implements Foo {
@Override
public void foo(final int bar, int baz) {
...
}
}
En el ejemplo anterior,bar
ybaz
tiene el opuestofinal
definiciones en la clase VS la interfaz.
De la misma manera, nofinal
as restricciones @ se aplican cuando un método de clase extiende a otro, ya seaabstract
o no
Mientrasfinal
tiene algún valor práctico dentro del cuerpo del método de clase, ¿hay algún punto que especifiquefinal
para los parámetros del método de interfaz?