logo

Palabra clave final en Java

  1. variable final
  2. método final
  3. clase final
  4. ¿Se hereda el método final?
  5. Variable final en blanco
  6. Variable final en blanco estática
  7. Parámetro final
  8. ¿Puedes declarar un constructor final?

El palabra clave final en java se usa para restringir al usuario. La palabra clave final de Java se puede utilizar en muchos contextos. La final puede ser:

  1. variable
  2. método
  3. clase

La palabra clave final se puede aplicar con las variables, una variable final que no tiene valor se llama variable final en blanco o variable final no inicializada. Sólo se puede inicializar en el constructor. La variable final en blanco también puede ser estática y se inicializará únicamente en el bloque estático. Tendremos un aprendizaje detallado de estos. Primero aprendamos los conceptos básicos de la palabra clave final.

programa de matriz bidimensional en c
palabra clave final en java

1) variable final de Java

Si convierte alguna variable en final, no podrá cambiar el valor de la variable final (será constante).

Ejemplo de variable final

Hay un límite de velocidad de variable final, vamos a cambiar el valor de esta variable, pero no se puede cambiar porque una vez que a la variable final se le asigna un valor, nunca se puede cambiar.

 class Bike9{ final int speedlimit=90;//final variable void run(){ speedlimit=400; } public static void main(String args[]){ Bike9 obj=new Bike9(); obj.run(); } }//end of class 
Pruébalo ahora
 Output:Compile Time Error 

2) método final de Java

Si convierte algún método en final, no podrá anularlo.

Ejemplo de método final

 class Bike{ final void run(){System.out.println('running');} } class Honda extends Bike{ void run(){System.out.println('running safely with 100kmph');} public static void main(String args[]){ Honda honda= new Honda(); honda.run(); } } 
Pruébalo ahora
 Output:Compile Time Error 

3) clase final de Java

Si haces alguna clase como final no podrás ampliarla.

Ejemplo de clase final

 final class Bike{} class Honda1 extends Bike{ void run(){System.out.println('running safely with 100kmph');} public static void main(String args[]){ Honda1 honda= new Honda1(); honda.run(); } } 
Pruébalo ahora
 Output:Compile Time Error 

P) ¿Se hereda el método final?

Respuesta) Sí, el método final se hereda pero no se puede anular. Por ejemplo:

 class Bike{ final void run(){System.out.println('running...');} } class Honda2 extends Bike{ public static void main(String args[]){ new Honda2().run(); } } 
Pruébalo ahora
 Output:running... 

P) ¿Qué es la variable final en blanco o no inicializada?

Una variable final que no se inicializa en el momento de la declaración se conoce como variable final en blanco.

Si desea crear una variable que se inicialice en el momento de crear el objeto y una vez inicializada no se pueda cambiar, es útil. Por ejemplo, número de TARJETA PAN de un empleado.

Sólo se puede inicializar en el constructor.

Ejemplo de variable final en blanco

 class Student{ int id; String name; final String PAN_CARD_NUMBER; ... } 

Que) ¿Podemos inicializar la variable final en blanco?

Sí, pero sólo en constructor. Por ejemplo:

 class Bike10{ final int speedlimit;//blank final variable Bike10(){ speedlimit=70; System.out.println(speedlimit); } public static void main(String args[]){ new Bike10(); } } 
Pruébalo ahora
 Output: 70 

variable final en blanco estática

Una variable final estática que no se inicializa en el momento de la declaración se conoce como variable final estática en blanco. Sólo se puede inicializar en un bloque estático.

Ejemplo de variable final en blanco estática

 class A{ static final int data;//static blank final variable static{ data=50;} public static void main(String args[]){ System.out.println(A.data); } } 

P) ¿Cuál es el parámetro final?

Si declara algún parámetro como final, no podrá cambiar su valor.

 class Bike11{ int cube(final int n){ n=n+2;//can't be changed as n is final n*n*n; } public static void main(String args[]){ Bike11 b=new Bike11(); b.cube(5); } } 
Pruébalo ahora
 Output: Compile Time Error 

P) ¿Podemos declarar un constructor final?

No, porque el constructor nunca se hereda.

lista java