¿Qué es estático y no estático en Java?

¿Qué es estático y no estático en Java?

Java usa principalmente el "estático"Palabra clave para la gestión de la memoria. Variables, bloques y métodos Se pueden usar con la palabra clave estática. En lugar de una instancia de clase en particular, la palabra clave estática se refiere a la clase en su conjunto. Sin la palabra clave estática, en Java, los métodos y variables se consideran por defecto ""no estático".

Este artículo explicará lo estático y no estático en Java.

¿Qué es estática en Java??

El "estático"Es una palabra clave en Java utilizada para la gestión de la memoria de las variables y métodos que pertenecen a una clase. En Java, hay variables estáticas y métodos estáticos en las clases, que se discutirán en las secciones a continuación.

Cómo crear variables estáticas en Java?

Las variables estáticas son variables de clase y se pueden crear a nivel de clase. Cuando una variable se declara como "estático", El compilador crea una copia de la variable y la comparte con todos los objetos de la clase. Por otro lado, las variables estáticas funcionan efectivamente como variables globales. Se puede recuperar solo con el nombre de la clase y no necesita usarse con un objeto. Guarda la memoria y mejora la eficiencia de la memoria del software.

Sintaxis

Para crear la variable estática en una clase, use la siguiente sintaxis:

Pública estática int x = 10;


Aquí, "X"Es la variable estática que almacena el valor de tipo entero"10".

Discutamos qué es un método estático en Java y cómo crearlo.

Cómo crear un método estático en Java?

Se puede acceder a un método de clase estática sin la creación de un objeto o instancia de una clase definida. Puede recuperar solo miembros de datos estáticos y métodos de la misma clase u otra clase; No pueden acceder a métodos o variables no estáticas.

Además, los valores de cualquier miembro de datos estáticos se pueden cambiar mediante un método estático.

Sintaxis

Siga la sintaxis dada para crear un método estático en Java:

Public static void display ()
// Cuerpo de método


La sintaxis a continuación indica cómo llamar al método estático:

Nombre de la clase.staticmethod ()


Nota: Para llamar al método estático, usaremos el nombre de la clase. No necesitamos el objeto de clase para llamar al método porque la palabra clave estática corrige una ubicación de memoria específica para ese método en RAM, y la asignación de memoria solo ocurre una vez en el método estático.

Ejemplo

Crearemos un método estático llamado "mostrar()" en el "Mensaje"Clase e invóquelo en otra clase:

Mensaje de clase
Public static void display ()
Sistema.afuera.println ("Bienvenido a Linuxhint");


Aquí, en el método main () de otra clase llamada "Ejemplo", Llamaremos a la pantalla de método estático () sin crear una instancia u objeto del"Mensaje" clase:

Ejemplo de clase pública
public static void main (string [] args)
Mensaje.mostrar();



La salida muestra que hemos accedido con éxito el método estático de la clase en otra clase:


Pasemos a no estáticos en Java.

¿Qué es no estático en Java??

Cada método y variable en Java sin el "estático"La palabra clave es"no estático", Y puede acceder a todos los métodos y variables estáticos. La palabra clave no estática usa el enlace de tiempo de ejecución, también conocido como vinculación dinámica.

Cómo crear variables no estáticas en Java?

A "no estático"La variable es una variable de clase que no es estática. Las variables no estáticas también se llaman variables locales. Se define dentro de un método, constructor o bloque. El alcance de estas variables está restringido. Por eso solo podemos acceder a estas variables dentro del bloque definido.

Sintaxis

Use la sintaxis dada para crear una variable no estática en Java:

público int x = 10;


Aquí, "X"Es la variable local llamada variable no estática que almacena el valor de tipo entero"10".

Veamos qué es un método no estático en Java y cuál es el proceso de creación.

Cómo crear un método no estático en Java?

Java le permite anular el método no estático. Este tipo de método se crea utilizando la palabra clave "no estático". En métodos no estatales, se utiliza la unión dinámica y de tiempo de ejecución. Como resultado, no podemos llamarlo sin la instancia de la clase. En este caso, la memoria se asigna cada vez que el método se llama en el método no estático, y ocurre cada vez.

Sintaxis

Siga la sintaxis dada para el método no estático:

Public void display ()
// Cuerpo de método


Para invocar el método no estático en Java, primero necesitaremos crear un objeto de la clase y luego llamarlo.

Pasemos al ejemplo para ver cómo acceder a un método no estático en Java.

Ejemplo

Aquí, accederemos al método no estático de una clase en otra clase creando un objeto de la clase. Para hacerlo, primero, crearemos un método no estático llamado "mostrar()"Eso imprimirá la declaración utilizando el"Sistema.afuera.println ()"Método en un"Mensaje" clase:

Mensaje de clase
Public void display ()
Sistema.afuera.println ("Bienvenido a Linuxhint");


Ahora, crearemos un objeto "machista"De la clase de mensaje en el método main () de la otra clase llamada"Ejemplo", Entonces, llamaremos al método de visualización no estático () con él, porque no se accede a los métodos no estáticos sin el objeto de la clase:

Ejemplo de clase pública
public static void main (string [] args)
Mensaje msg = nuevo mensaje ();
machista.mostrar();



Producción


Avancemos hacia los puntos de diferencia clave entre un método estático y un método no estático en Java.

Diferencia entre métodos estáticos y no estáticos en Java

método estático

método no estático

Se declara con el "estáticoPalabra clave. No hay necesidad de declarar con ninguna palabra clave.
Es un miembro de una clase pero no es miembro de una instancia de esa clase. Pertenece a una clase y es tanto miembro como una instancia de esa clase.
Solo se puede acceder a los métodos estáticos y los miembros de los datos de la misma clase u otra clase. Puede acceder a miembros y métodos de datos estáticos y no estatales de la clase.
La asignación de memoria ocurre solo una vez. Cuando se llama el método, se asigna la memoria.
No es necesario crear ningún objeto para acceder a él. Para acceder a él, debe crear un objeto de clase.
Utiliza tiempo de compilación o vinculación temprana. Utiliza la vinculación dinámica o de tiempo de ejecución.
No se puede anular. Se puede anular.


Hemos incluido toda la guía de las variables y métodos estáticos y no estatales de Java.

Conclusión

En Java, las variables y los métodos no son estáticos de forma predeterminada, pero el método main () es estático. Para administrar la memoria, puede utilizar la palabra clave estática. Los métodos estáticos se pueden hacer accesibles sin crear un objeto de clase, en contraste con los métodos no estáticos, a los que no se puede acceder sin crear un objeto. En este artículo, explicamos las variables y métodos estáticos y no estáticos con explicaciones y ejemplos detallados.