Final a menudo se usa con Static para declarar constantes, y también verá cómo Final mejora el rendimiento de la aplicación.
¿Cuál es el significado de la palabra clave final?
Final es una palabra clave reservada en Java, que puede declarar variables de miembros, métodos, clases y variables locales. Una vez que declare la referencia como final, no podrá cambiar la referencia.
¿Qué son las variables finales?
Cualquier variable de miembro o variable local (variables en métodos o bloques de código se denominan variables locales) que se declaran como final se denomina variable final. Las variables finales a menudo se usan junto con palabras clave estáticas como constantes. Aquí hay un ejemplo de variable final:
La copia del código es la siguiente:
Public static final String préstamo = "préstamo";
Préstamo = nueva cadena ("préstamo") // error de compilación no válido
La variable final es de solo lectura.
¿Cuál es el método final?
Final también puede declarar métodos. La palabra clave final se agrega antes del método, lo que significa que este método no puede reescribirse mediante métodos de subclase. Si cree que la función de un método es lo suficientemente completa y no necesita cambiarse en la subclase, puede declarar este método final. El método final es más rápido que el método no final, porque ya está atento a está estático durante la compilación y no necesita estar vinculado dinámicamente en tiempo de ejecución. Aquí hay un ejemplo del método final:
La copia del código es la siguiente:
Clase PersonaLoan {
Public final String getName () {
devolver "préstamo personal";
}
}
clase cheapersonAlloan extiende personajeaan {
@Anular
Public final String getName () {
devolver "préstamo personal barato";
}
}
¿Cuál es la clase final?
Una clase que usa final para modificar se llama clase final. Las clases finales generalmente son funcionalmente completas y no se pueden heredar. Hay muchas clases en Java que son finales, como String, Interger y otras clases de envoltura. Aquí hay un ejemplo de la clase final:
La copia del código es la siguiente:
Clase final PersonaLoan {
}
clase CheappersonAlloan extiende PersonAlloan {// Error de compilación: no se puede heredar de la clase final
}
Estos son algunos de los beneficios de usar las palabras clave finales
La palabra clave final mejora el rendimiento. Aplicaciones JVM y Java caché variables finales.
Las variables finales se pueden compartir de manera segura en entornos de múltiples subprocesos sin la necesidad de una sobrecarga de sincronización adicional.
Usando la palabra clave final, el JVM optimizará los métodos, variables y clases.
Clase inmutable
Para crear una clase inmutable, use la palabra clave final. Una clase inmutable significa que sus objetos no se pueden cambiar una vez que se crean. La cadena es un representante de clases inmutables. Las clases inmutables tienen muchos beneficios, como sus objetos son de solo lectura y se pueden compartir de manera segura en un entorno múltiple sin sobrecarga de sincronización adicional, etc.
Lectura relacionada: por qué la cadena es inmutable y cómo escribir una clase inmutable.
Conocimiento importante sobre final
La palabra clave final se puede utilizar para variables miembros, variables locales, métodos y clases.
Las variables de los miembros finales deben inicializarse en el momento de la declaración o en el constructor, de lo contrario se informará un error de compilación.
No puede asignar una variable final nuevamente.
Las variables locales se deben asignar valores en el momento de la declaración.
Todas las variables en la clase anónima deben ser variables finales.
El método final no se puede reescribir.
La clase final no puede ser heredada.
La palabra clave final es diferente de la palabra clave final, que se utiliza para el manejo de excepciones.
La palabra clave final se confunde fácilmente con el método Finalize (), que es un método definido en la clase de objeto y es un método llamado por el JVM antes de la recolección de basura.
Todas las variables declaradas en la interfaz son finales.
Las dos palabras clave finales y abstractas están inversamente relacionadas, por lo que la clase final no puede ser abstracta.
El método final está vinculado en la etapa de compilación, que se llama unión estática.
Una variable final en blanco que no inicializa la variable final en la declaración se denomina variable final en blanco. Si no hace esto, el compilador informará un error "La variable final (nombre de la variable) debe inicializarse".
Declarar clases, métodos y variables como final puede mejorar el rendimiento, para que el JVM tenga la oportunidad de estimar y luego optimizar.
Según la Convención del Código Java, las variables finales son constantes, y los nombres constantes generalmente están capitalizados:
private final int count = 10;
Declarar final para objetos de recolección significa que la referencia no se puede cambiar, pero puede agregar, eliminar o cambiar el contenido a ella. Por ejemplo:
préstamos de lista final privada = new ArrayList ();
list.add ("préstamo hipotecario");
list.add ("préstamo personal");
préstamo = nuevo vector ();
Ya sabemos qué son las variables finales, los métodos finales y las clases finales. Use final cuando sea necesario para escribir un código más rápido y mejor.