¿Qué es el modificador static en Java y cómo se utiliza?

Icono play
Java
Modificador static

El modificador static en Java es una de las palabras reservadas en este lenguaje que le da a quien programa, la posibilidad de establecer cómo será el acceso a determinados componentes del código que se está desarrollando.

En el caso particular de static, restringe el acceso a las variables o métodos a los que se haya aplicado. Para comprender mejor cómo funciona esto es necesario saber algunos detalles que aclaran el tema.

¿Cómo funciona el modificador static en Java?

El modificador static en Java es fácil de usar, basta con anteponer la palabra static a aquel aspecto del código que se quiere modificar. Cuando se aplica, la gestión de la memoria es mucho más eficiente.

Esto debido a que cuando, por ejemplo, se emplea static para modificar una variable, cada instancia que utilice esa variable no tendrá una copia de ella, como ocurre normalmente, sino que será la clase quién contendrá y tendrá acceso a modificarla.

El modificador static en Java puede ser empleado para variables, métodos, clases y bloques de código. Además, para hacer uso de cualquier atributo que tenga el modificador static, no es necesario crear una instancia de la clase que lo contiene, tal como puede verse aquí:

class AtributosEstaticos

{
    // Usamos la palabra reservada static para crear un metodo estatico
    static void metodo1() {
        System.out.println("Estoy escribiendo desde metodo 1");
    }
    public static void main(String[] args) {
        // llamamos al metodo SIN CREAR objetos
        metodo1();

    }

}

Variables con el modificador static en Java

Una manera sencilla de comprender el funcionamiento de una variable cuando se aplica el modificador static de Java es este código:

//Este código hace un contador, usando una variable estática

class Contador {
    static int contador = 0; //Esta variable reserva espacio de memoria una sola vez 
    Contador() {
        contador++; //el valor de la variable se incrementa en cada oportunidad  
        System.out.println(contador);
    }

    public static void main(String args[]) {

        //Ahora se crean instancias
        Contador Cont1 = new Contador();
        Contador Cont2 = new Contador();
        Contador Cont3 = new Contador();

    }
}

Entonces una variable con el modificador static en Java:

  • Pertenece a la clase.
  • Solo se inicializa una sola vez.
  • Hay una sola copia de la variable, compartida por todas las instancias que se creen de esa clase.
  • Para acceder al contenido de la variable no es necesario generar una instancia.

Métodos con el modificador static en Java

Los métodos también pueden ser modificar su comportamiento con static, como se ilustra con el este ejemplo:

class MetodoEstatico {

    //creamos un método que va a multiplicar dos números que se le pasen como parámetros
    public static int multiplicar(int num1, int num2) {
        int mult = num1 * num2;
        return mult;
    }

    public static void main(String[] args) {
//accedemos al método a través de su clase.
        System.out.println("Multiplicación: " + MetodoEstatico.multiplicar(7, 4)); 

        System.out.println("Multiplicación: " + MetodoEstatico.multiplicar(9, 10));
    }
}

 

Si se trata de un método con el modificador static en Java, entonces:

  • El método pasa a formar parte de la clase.
  • Solo pueden llamar directamente a otros métodos estáticos.
  • Se puede acceder al método sin necesidad de generar una instancia.

Aunque, en un principio, comprender cómo funciona este modificador es complejo, su utilización puede otorgar ventajas, sobre todo cuando se trata de proyectos de gran envergadura.

Por esta razón, es recomendable practicar con ejemplos sencillos hasta lograr un aprendizaje efectivo del tema.

¿Todavía no te has apuntado a nuestro Bootcamp?
Tenemos muchos cursos para ofrecerte y ¡TOTALMENTE GRATIS! Estos son algunos de ellos: