static et final sont importants en Java. static indique
qu'un élément appartient à la classe plutÎt qu'à une instance. final indique qu'une valeur ne
peut pas ĂȘtre modifiĂ©e.
5.4Mots-clés static et final
5.4 â Mots-clĂ©s static et final
đč Le mot-clĂ© static
Le mot-clé static indique qu'un élément (variable ou méthode) appartient à la
classe elle-mĂȘme, et non Ă une instance (objet) de la classe. Cela
signifie qu'il n'est pas nécessaire de créer un objet pour y accéder.
Variables statiques (variables de classe)
Une variable statique est partagée par toutes les instances de la classe. Il n'y a qu'une seule copie de cette variable, peu importe le nombre d'objets créés.
Exemple : Compteur partagé
public class Personne {
private String nom;
static int nombrePersonnes = 0; // Variable statique partagée
public Personne(String nom) {
this.nom = nom;
nombrePersonnes++; // Incrémente le compteur partagé
}
public static int getNombrePersonnes() {
return nombrePersonnes; // Accessible sans créer d'objet
}
}
// Utilisation
Personne p1 = new Personne("Jean");
Personne p2 = new Personne("Marie");
System.out.println(Personne.getNombrePersonnes()); // Affiche : 2
Méthodes statiques (méthodes de classe)
Une mĂ©thode statique peut ĂȘtre appelĂ©e directement sur la classe, sans crĂ©er d'objet. Elle ne peut pas accĂ©der aux attributs d'instance (non statiques), mais peut accĂ©der aux variables statiques.
Exemple : Méthodes utilitaires
public class Calculatrice {
// MĂ©thode statique : peut ĂȘtre appelĂ©e sans crĂ©er d'objet
public static int additionner(int a, int b) {
return a + b;
}
public static double calculerMoyenne(double[] nombres) {
double somme = 0;
for (double n : nombres) {
somme += n;
}
return somme / nombres.length;
}
}
// Utilisation : appel sur la classe
int resultat = Calculatrice.additionner(5, 3);
double moyenne = Calculatrice.calculerMoyenne(new double[]{10, 20, 30});