iberck
11/6/2015 - 7:09 AM

Static context

Static conext

Clases estáticas

static en una clase NO TIENE EL MISMO SIGNIFICADO que tiene sobre un campo. Una clase estática anidada es lo mismo que utilizar una clase externa, sólo que las clases estáticas se utilizan cuando le dan más lógica al código estando dentro que estando fuera.

Contexto estático

Existen 2 tipos de variables, de clase y de instancia.

String color;

public static void main(String[] args) {
    color="rojo";
}

El código anterior no compila porque no existe un objeto al cual aplicarle el color, no tiene sentido utilizar variables de instancia dentro de un contexto estático PORQUE NO HAY UNA INSTANCIA.

Así como los métodos estáticos de una clase, una clase estática no se puede referir a las variables de instancia o métodos no estáticos definidos en la clase que los envuelve. Estos sólo pueden ser accedidos a través de una referencia de un objeto.