Exercice JAVA corrigé masquage (shadowing) et héritage

Exercice JAVA corrigé masquage (shadowing) et héritage, tutoriel & guide de travaux pratiques en pdf.

Vous trouverez ci-dessous le programme Alphabet qui implémente la hiérarchie de 3 classes (A, B et C). Indiquez l’affichage du programme (sans l’exécuter). Attention aux situations de shadowing.

class Alphabet {
 public static void main(String args[]) {
 A[] as = new A[3];
 as[0] = new A(1);
 as[1] = new B(2);
 as[2] = new C(3);

 for (int i = 0; i < as.length; i++) {
 as[i].afficherClasse();
 System.out.println("-----");
 }

 for (int i = 0; i < as.length; i++) {
 as[i].afficherVariables();
 System.out.println("-----");
 }
 }
}

class A {
 protected int a = 5;

 public A(int a) {
 this.a = a;
 }

 public void afficherClasse() {
 System.out.println("Classe A");
 }

 public void afficherVariables() {
 System.out.println("a = " + a);
 }
}

class B extends A {
 protected int b = 6;

 public B(int b) {
 super(2 * b);
 a = b;
 }

 public void afficherClasse() {
 super.afficherClasse();
 System.out.println("Classe B");
 }

 public void afficherVariables() {
 super.afficherVariables();
 System.out.println("b = " + b);
 }
}

class C extends B {
 protected int b = 7;
 protected int c = 8;

 public C(int c) {
 super(3 * c);
 b = c;
 }

 public void afficherClasse() {
 super.afficherClasse();
 System.out.println("Classe C");
 }

 public void afficherVariables() {
 super.afficherVariables();
 System.out.println("c = " + c);
 }
}

La correction exercice JAVA (voir page 2 en bas)

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *