Articles of final

¿Cuál es el sentido de ArrayList final?

¿Qué ventajas / desventajas podemos obtener haciendo ArrayList (u otra colección) final? Todavía puedo agregar nuevos elementos a ArrayList, eliminar elementos y actualizarlos. Pero, ¿qué efecto tiene hacer que sea final?

Manipulación final de variables en Java

¿Podría alguien decirme cuál es el significado de la siguiente línea en el contexto de Java: la variable final aún puede ser manipulada a menos que sea inmutable Por lo que yo sé, al declarar cualquier variable como definitiva, no puede cambiarla de nuevo, entonces, ¿qué quieren decir con la palabra inmutable en la línea […]

¿Por qué no hay característica constante en Java?

Intenté identificar el motivo detrás de las constantes en Java. He aprendido que Java nos permite declarar constantes utilizando final palabra clave final . Mi pregunta es por qué Java no introdujo una característica constante ( const ). Como muchas personas dicen que ha venido de C ++, en C ++ tenemos la palabra clave […]

¿Por qué `private val` y` private final val` son diferentes?

Solía ​​pensar que private val y private val private final val son los mismos, hasta que vi la sección 4.1 en Scala Reference: Una definición de valor constante es de la forma final val x = e donde e es una expresión constante (§6.24). El modificador final debe estar presente y no se puede dar […]

Argumentos finales en métodos de interfaz: ¿cuál es el punto?

En Java, es perfectamente legal definir argumentos final en métodos de interfaz y no obedecer 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 […]

¿Debería declararse un “Registrador final estático” en MAYÚSCULAS?

En Java, las variables finales estáticas son constantes y la convención es que deberían estar en mayúsculas. Sin embargo, he visto que la mayoría de la gente declara los registradores en minúsculas, lo que aparece como una violación en PMD . p.ej: private static final Logger logger = Logger.getLogger(MyClass.class); Simplemente busque en google o SO […]

¿en qué orden se ejecutan bloques estáticos y variables estáticas en una clase?

Posible duplicado: Inicialización de clase estática de Java ¿Por qué la variable de cadena se actualiza en el bloque de inicialización y no en el número entero (aunque el bloque se escribe primero)? class NewClass { static { System.out.println(NewClass.string+” “+NewClass.integer); } final static String string=”static”; final static Integer integer=1; public static void main(String [] args)//throws […]

¿Por qué se puede modificar el objeto final?

Encontré el siguiente código en una base de código en la que estoy trabajando: public final class ConfigurationService { private static final ConfigurationService INSTANCE = new ConfigurationService(); private List providers; private ConfigurationService() { providers = new ArrayList(); } public static void addProvider(ConfigurationProvider provider) { INSTANCE.providers.add(provider); } … INSTANCE se declara como final. ¿Por qué se […]

Comprobando que existe un miembro, posiblemente en una clase base, versión C ++ 11

En https://stackoverflow.com/a/1967183/134841 , se proporciona una solución para comprobar estáticamente si un miembro existe, posiblemente en una subclase de un tipo: template class has_resize_method { class yes { char m;}; class no { yes m[2];}; struct BaseMixin { void resize(int){} }; struct Base : public Type, public BaseMixin {}; template class Helper{}; template static no […]

Método ‘final’ de Java: ¿qué promete?

En una clase de Java, un método se puede definir como final , para marcar que este método no se puede anular: public class Thingy { public Thingy() { … } public int operationA() {…} /** this method does @return That and is final. */ public final int getThat() { …} } Eso está claro, […]