Initialiseur

           

Les attributs statiques sont initialisés lors du premier chargement de la classe. Lorsqu'il s'agit d'un attribut "simple", on peut initialiser l'attribut au moment de sa définition comme vous avez pu le voir dans les précédents exemples.

Pour une initialisation plus complexe, comme par exemple pour initialiser un tableau, on peut utiliser un initialiseur statique selon le modèle de l'exemple ci-dessous : dans un bloc précédé du modificateur static. L'initialisation du tableau desSinus se fait au chargement de la classe en mémoire.

class TableauSinus {
static double[] desSinus = new double[10];

static {
for (int i = 0;i < desSinus.length; i++)
desSinus[i] = Math.sin(i * Math.PI / 20);
}
}

class EssaiInitialiseur {
public static void main(String argv[]) {
System.out.printf("%.5f\n", TableauSinus.desSinus[1]);
}
}
On obtient :
0.15643

Pour accéder au programme.


© Charon Irène Télécom ParisTech 2010