[tab name=’Exercice Java’]
Indiquez l’affichage du programme Memoire.java. Abstenez-vous d’exécuter le programme avant de répondre à la question. Faites toujours très attention aux détails en répondant à ce genre de question.
Il s’agit de comprendre les différentes façons de stocker en mémoire une variable de type primitif et une variable de type objet. La classe A est déclarée dans le même fichier que la classe Memoire.
class Memoire {
public static void main (String args[]) {
int i = 1;
afficher(i);
modifier(i);
afficher(i);
System.out.println("-----");
A a1 = new A(1);
a1.afficher();
a1.modifier();
a1.afficher();
System.out.println("-----");
A a2 = new A(2);
a2.afficher();
A a3 = new A(3);
a3.afficher();
System.out.println("-----");
a3 = a2;
a2.afficher();
a3.afficher();
System.out.println("-----");
a2.modifier();
a3.modifier();
a2.afficher();
a3.afficher();
System.out.println("-----");
}
static void modifier (int i) {
i++;
}
static void afficher (int i) {
System.out.println(i);
}
}
class A {
private int i;
A (int i) {
this.i = i;
}
void modifier () {
i++;
}
void afficher () {
System.out.println(i);
}
}[/tab][tab name=’Correction’]
Affichage du programme:
1 1 ----- 1 2 ----- 2 3 ----- 2 2 ----- 4 4 -----
[/tab][end_tabset skin= »ginger » ]