¿Qué es static en Java?
los atributos miembros de una clase pueden ser atributos de
clase o atributos de instancia; se dice que son atributos de clase si se usa la
palabra clave static: en ese caso la variable es única para todas las
instancias (objetos) de la clase (ocupa un único lugar en memoria).
Los métodos static también pertenecen a la clase y no
requieren de un objeto para llamarlos. Un ejemplo clásico de métodos estáticos
son las funciones matemáticas de Jav
De esta manera, para acceder a un atributo static, no
necesitamos crear una instancia de la clase, ya que podemos acceder a ellos
mediante el nombre de la clase:
public class Mates {
//Atributo de la
clase Mates static
public static float pi = 3.14f;
//Podemos acceder a el mediante el
nombre de la clase
public static void main(String[] args) {
System.out.println(Mates.pi);
}
}
¿Para que sirve final?
Además, muchas veces
los modificadores static y final se utilizan en conjunto para definir
constantes como puedes ver en el siguiente ejemplo:
public
class Constantes {
//Constantes publicas
public static final float PI = 3.141592f;
public static final float E = 2.728281f;
//MAIN
public static void main(String[] args) {
System.out.println("PI = "
+ Constantes.PI);
System.out.println("E =
" + Constantes.E);
}
}
Definiendo un atributo como public, static y final,
obtenemos una constante que podrá ser accedida desde cualquier clase (public),
el acceso se podrá realizar sin tener que instanciar la clase mediante el
nombre de la clase (static) y su valor no podrá ser modificado en ningún momento (final).