Diferencia entre estático y final en Java

Tabla de contenido:

Diferencia entre estático y final en Java
Diferencia entre estático y final en Java

Video: Diferencia entre estático y final en Java

Video: Diferencia entre estático y final en Java
Video: diferencia entre Final y static en java 2024, Noviembre
Anonim

Diferencia clave: estático frente a final en Java

Cada lenguaje de programación tiene una sintaxis específica. El programador debe seguir estas sintaxis al escribir programas. Las palabras clave de los lenguajes de programación tienen significados específicos según las tareas. Los proporciona el lenguaje de programación y no se pueden utilizar para variables, métodos, clases, etc. definidos por el usuario. La estática y la final son dos palabras clave en Java. Este artículo analiza la diferencia entre estático y final en Java. La diferencia clave entre static y final en Java es que static se usa para definir el miembro de la clase que se puede usar independientemente de cualquier objeto de la clase, mientras que final se usa para declarar una variable constante o un método que no se puede anular o una clase que no se puede heredar.

¿Qué es estático en Java?

Una clase consta de miembros de datos (atributos) y métodos. Para llamar a los métodos, debe haber un objeto de esa clase específica. Cuando un método se declara como estático, no es necesario crear un objeto para llamar a ese método. El método se puede llamar usando el nombre de la clase. Consulte el siguiente programa.

Diferencia entre estático y final en Java
Diferencia entre estático y final en Java

Figura 01: Programa Java con variables estáticas y método estático

Según el programa anterior, la clase A contiene una variable numérica y un método de visualización. Ambos son miembros estáticos. Por lo tanto, no es necesario crear un objeto para acceder a la variable numérica y al método de visualización. El programador puede escribir directamente el nombre de la clase para imprimir el número y llamar a la pantalla del método. Por lo tanto, no hay necesidad de instanciar un objeto. Si la variable numérica y el método de visualización no son estáticos, entonces debería haber un objeto de tipo A.

Diferencia entre estática y final en Java_Figura 02
Diferencia entre estática y final en Java_Figura 02

Figura 02: Uso de bloque estático

El programa anterior contiene el bloque estático y el método principal. El bloque estático se llama cuando se carga la clase. Por lo tanto, la sentencia del bloque estático se ejecuta antes que la sentencia del bloque principal. Si hay muchos bloques estáticos, se ejecutarán en secuencia.

¿Qué es final en Java?

En el programa pueden existir variables de varios tipos. Si hay una variable como int x=1; más adelante en el programa, ese valor variable se puede cambiar a algún otro valor. Una variable que se declara como final y se inicializa con un valor no se puede cambiar más adelante en el programa.

Diferencia entre estática y final en Java_Figura 03
Diferencia entre estática y final en Java_Figura 03

Figura 03: Programa con Variable final y Herencia

Según el programa anterior, x es una variable final. Se le asigna un valor 5. No se puede cambiar ningún otro valor porque se declara como final. Java admite la programación orientada a objetos (POO). Un pilar de OOP es un polimorfismo. Un tipo de polimorfismo es anular. La clase A tiene el método de visualización. La clase B extiende la clase A y tiene su propio método de visualización. Al crear un objeto de tipo B y llamar al método de visualización, se imprimirá "B" como salida. El método de visualización de la clase A se reemplaza por el método de visualización de la clase B.

Si el programador quiere evitar anular un método, entonces puede usar la palabra clave final para ese método. Si el método de visualización en la clase A es final, el método de visualización en B generará un error porque ese método no se puede anular.

Diferencia entre estática y final en Java_Figura 04
Diferencia entre estática y final en Java_Figura 04

Figura 04: palabra clave final en el Método

Otro pilar de la programación orientada a objetos es la herencia. Ayuda a reutilizar el código ya existente. La nueva clase puede extenderse desde la clase existente y usar los miembros de datos y métodos de la clase existente. Si se requiere dejar de heredar una clase, el programador puede usar la palabra clave 'final'. Consulte el siguiente programa.

Ke3y Diferencia entre estática y final en Java
Ke3y Diferencia entre estática y final en Java

Figura 05: palabra clave final en la Clase

Según el programa anterior, la clase A se declara final. Cuando la clase B extiende A, da un error porque la clase A se declara como final. No puede ser heredado por otras clases.

¿Cuál es la similitud entre estático y final en Java?

Tanto static como final son palabras clave en Java

¿Cuál es la diferencia entre estático y final en Java?

estático vs final en Java

La palabra clave estática indica que se puede acceder a una variable miembro, o método, sin necesidad de instanciar la clase a la que pertenece. La palabra clave final denota una entidad que solo se puede asignar una vez.
Variables
Las variables estáticas se pueden reinicializar. Las variables finales no se pueden reinicializar.
Métodos
Puede ser llamado por otros métodos estáticos y solo acceder a los miembros estáticos de la clase. Los métodos finales no se pueden anular.
Clase
No se puede crear el objeto de clase estática. Solo contiene miembros estáticos. La clase final no puede ser heredada por otras clases.
Bloque
La palabra clave estática se puede usar en un bloque. La palabra clave final no se usa con un bloque.

Resumen: estático frente a final en Java

Este artículo analiza dos palabras clave en Java, como static y final. La diferencia entre static y final en Java es que static se usa para definir el miembro de la clase que se puede usar independientemente de cualquier objeto de la clase, mientras que final se usa para declarar una variable constante o un método que no se puede anular o una clase que no se puede. ser heredado.

Recomendado: