Diferencia entre Static y Final en Java

Diferencia entre Static y Final en Java

Diferencia principal

La diferencia entre static y final en java es que static es una palabra clave en java que se usa para definir el miembro de la clase que se puede usar independientemente de cualquier objeto de la clase, mientras que la palabra clave final en java se usa para declarar una variable constante que no se puede anular. y una clase que no se puede heredar.

Estático frente a final en Java

Java es un lenguaje de programación orientado a objetos que utiliza tanto un compilador como un intérprete. La mayoría de los software están hechos en lenguaje de programación Java. El código Java se puede escribir en Windows, Linux y Mac OS. La sintaxis del lenguaje de programación C y C ++ es prácticamente la misma. Java produce un navegador para ejecutar programas que ayudan a crear una interfaz gráfica de usuario. El lenguaje de programación Java se usa y es tendencia en estos días. Para escribir código Java, un programador necesita un kit de desarrollo de software (SDK) que incluye un compilador, un intérprete que no se requiere en C ++.Hay muchas palabras clave que se utilizan en Java, por lo que estas palabras clave son estáticas y finales. Si una variable es estática, entonces se puede acceder a ella antes que el objeto de clase que se crea. Final es una palabra clave que tiene un efecto diferente en la clase, los métodos y las variables.

En Java, static es una palabra clave que se aplica a las clases, variables, métodos y bloques. Tenemos que usar la palabra clave «estática» para hacer que los miembros de la clase, como clase y bloque, sean estáticos. Tienes que usar la palabra estática antes que estos miembros de la clase. Al igual que static final, también es una palabra clave que se usa para una clase, variable y métodos. Usando la palabra clave «final», la clase, la variable y los métodos se declaran como una palabra clave final. Si un miembro de la clase es estático, entonces este miembro de la clase puede volverse global para todos los miembros de la clase. No hay memoria por instancia, es decir, todos los objetos tienen que compartir la misma copia del miembro estático. El miembro estático en el código es independiente del objeto de la clase. Se accede a un miembro estático antes de que se cree el objeto de la clase. El método Main () es el ejemplo de miembro estático, esto es estático porque se puede usar antes de que salga cualquier objeto. Class_name_static_member es un general para acceder al miembro estático de la clase. Para todos los demás miembros de datos de la clase, la variable estática actúa como una variable global. No puede modificar una variable como programa después de crear un programa. Tienes que declarar la variable final antes del momento de la declaración. Las variables finales no tienen espacio en la memoria como base por instancia. Es necesario acceder a la variable estática antes que cualquier objeto de la clase. El operador de punto (.) Se utiliza para acceder a la variable estática. Solo se crea una copia y todas las variables finales comparten la misma copia de la variable final. Por la subclase de la clase, el método no se puede declarar como final y no se puede anular. La herencia no está permitida en la clase final. La palabra clave final solo se usa en Java y no es compatible con C ++ y C #. Los métodos de palabras clave estáticas solo pueden llamar a otro método estático. Los datos estáticos pueden acceder al método estático. Java no admite el concepto de clase estática, solo la clase externa puede acceder a la clase estática.

LEER  Diferencia entre XML y JSON

Cuadro comparativo

Estático Final
Static es una palabra clave en Java que se usa para definir el miembro de la clase que se puede usar independientemente de cualquier objeto de la clase. La palabra clave final en java se usa para declarar una variable constante que no se puede anular y una clase que no se puede heredar.
Modificación
La variable estática no se puede modificar. Se puede modificar una variable final
Clase
No se puede crear un objeto de clase estática Se puede crear un objeto de clase final
Bloquear
El bloque estático es compatible con la palabra clave estática El bloque final no es compatible con la palabra clave final

¿Qué es estático?

En Java, static es una palabra clave que se aplica a las clases, variables, métodos y bloques. Tenemos que usar la palabra clave «estática» para hacer que los miembros de la clase, como clase y bloque, sean estáticos. Tienes que usar la palabra estática antes que estos miembros de la clase. Si un miembro de la clase es estático, entonces este miembro de la clase puede volverse global para todos los miembros de la clase. No hay memoria por instancia, es decir, todos los objetos tienen que compartir la misma copia del miembro estático. El miembro estático en el código es independiente del objeto de la clase. Se accede a un miembro estático antes de que se cree el objeto de la clase. El método Main () es el ejemplo de miembro estático, esto es estático porque se puede usar antes de que salga cualquier objeto. Class_name_static_member es un general para acceder al miembro estático de la clase. Para todos los demás miembros de datos de la clase, la variable estática actúa como una variable global. Es necesario acceder a una variable estática antes que a cualquier objeto de la clase. El operador de punto (.) Se utiliza para acceder a la variable estática. Los métodos de palabras clave estáticas solo pueden llamar a otro método estático. Los datos estáticos pueden acceder al método estático. Java no admite el concepto de clase estática, solo la clase externa puede acceder a la clase estática.

¿Qué es final?

Al igual que static final, también es una palabra clave que se usa para una clase, variable y métodos. Usando la palabra clave «final», la clase, la variable y los métodos se declaran como palabra clave final. No puede modificar una variable como programa después de crear un programa. Tienes que declarar la variable final antes del momento de la declaración. Las variables finales no tienen espacio en la memoria como por instancia. Solo se crea una copia y todas las variables finales comparten la misma copia de la variable final. Por la subclase de la clase, el método no se puede declarar como final y no se puede anular. La herencia no está permitida en la clase final. La palabra clave final solo se usa en Java y no es compatible con C ++ y C #.

LEER  Diferencia entre Archivo y Copia de Seguridad

Diferencias clave

  1. Static es una palabra clave en java que se usa para definir el miembro de la clase que se puede usar independientemente de cualquier objeto de la clase, mientras que la palabra clave final en java se usa para declarar una variable constante que no se puede anular y una clase que no se puede heredar.
  2. Una variable estática no se puede modificar, mientras que la variable final se puede modificar.
  3. No se puede crear un objeto de clase estática mientras que se puede crear un objeto de clase final mientras que se puede crear un objeto de clase final,
  4. El bloque estático se admite en la palabra clave estática, mientras que el bloque final no se admite en el final.

Video explicativo

Conclusión

En este artículo, estudiamos la diferencia entre estático y final en java. Static es una palabra clave en java que se usa para definir el miembro de la clase que se puede usar independientemente de cualquier objeto de la clase, mientras que la palabra clave final en java se usa para declarar una variable constante que no se puede anular y una clase que no se puede heredar. Después de leer este artículo, obtendrá el concepto claro de estático y final en java.