<aside> ⚠️
Hors programme
</aside>
En Java, le mot-clé static
désigne une variable ou méthode qui appartient à la classe elle-même, plutôt qu'à des instances spécifiques de cette classe.
Variable statique : Une variable déclarée avec static
est partagée par toutes les instances de la classe. Il n'y a qu'une seule copie de cette variable, quel que soit le nombre d'objets créés à partir de cette classe.
Classe.java
public class Classe{
private static int compteur = 0;
public maClasse() {
}
public int augmenterCompteur() {
return compteur++;
}
public int getCompteur() {
return compteur;
}
}
Test.java
public class Test{
public static void main(String[] args) {
maClasse objet1 = new maClasse();
System.out.println("compteur vaut : "+objet1.getCompteur());
objet1.augmenterCompteur();
maClasse objet2 = new maClasse();
System.out.println("compteur vaut : "+objet2.getCompteur());
}
}
nombre vaut : 0
nombre vaut : 1
Bien que l’augmentation du compteur ait été réalisée par objet1
, la valeur de compteur
qui est une variable static a augmentée pour toutes les instances, notamment objet2
.
Méthode statique : Une méthode marquée comme static
peut être appelée sans avoir besoin de créer une instance de la classe. Elle ne peut pas accéder directement aux membres non statiques de la classe.
Classe.java
public class Classe{
public static void print() {
System.out.println("Je suis un texte.");
}
}
Test.java
public class Test{
public static void main(String[] args) {
Classe.print();
}
}
Je suis un texte.