4.3.2. Le mot clé static
Le mot clé static s'applique aux variables et aux méthodes.
Les variables d'instance sont des variables propres à un objet. Il est possible de définir une variable de classe qui est partagée entre toutes les instances d'une même classe : elle n'existe donc qu'une seule fois en mémoire. Une telle variable permet de stocker une constante ou une valeur modifiée tour à tour par les instances de la classe. Elle se définit avec le mot clé static.
1 2 3 4 5 6 7
| Exemple :
public class Cercle {
static float pi = 3.1416f;
float rayon;
public Cercle(float rayon) { this.rayon = rayon; }
public float surface() { return rayon * rayon * pi;}
} |
Il est aussi possible par exemple de mémoriser les valeurs min et max d'un ensemble d'objets de même classe.
Une méthode static est une méthode qui n'agit pas sur des variables d'instance mais uniquement sur des variables de classe. Ces méthodes peuvent être utilisées sans instancier un objet de la classe. Les méthodes ainsi définies peuvent être appelées avec la notation classe.methode() au lieu de objet.methode() : la première forme est fortement recommandée pour éviter toute confusion.
Il n'est pas possible d'appeler une méthode d'instance ou d'accéder à une variable d'instance à partir d'une méthode de classe statique.
Partager