Polymorphie en java

Author:


{filelink=11162}

import java.util.Random;
/*
 *
 * Exemple de Polymorphie en Java
 *
 **/
public class ExempleForme {
  private static RandomShapeGenerator gen = new RandomShapeGenerator();

  public static void main(String[] args) {
    Shape[] s = new Shape[5];
    // Remplir le tableau avec les formes:
    for (int i = 0; i < s.length; i++)
      s[i] = gen.next();
    //Appels de la m�thode polymorphique:
    for (int i = 0; i < s.length; i++)
      s[i].dessiner();

  }
}
class Shape {
  void dessiner() {
  }

  void effacer() {
  }
}

class Cercle extends Shape {
  void dessiner() {
    System.out.println("Cercle.dessiner()"); //La m�thode dessiner de la classe cercle
  }

  void effacer() {
    System.out.println("Cercle.effacer()");
  }
}

class Carr� extends Shape {
  void dessiner() {
    System.out.println("Carr�.dessiner()"); //La m�thode dessiner de la classe cerr�
  }

  void effacer() {
    System.out.println("Carr�.effacer()");
  }
}

class Triangle extends Shape {
  void dessiner() {
    System.out.println("Triangle.dessiner()"); //La m�thode dessiner de la classe triangle
  }

  void effacer() {
    System.out.println("Triangle.effacer()");
  }
}

// Factoriser la g�n�ration des Formes

class RandomShapeGenerator {
  private Random rand = new Random();

  public Shape next() {
    switch (rand.nextInt(3)) {
    default:
    case 0:
      return new Cercle();
    case 1:
      return new Carr�();
    case 2:
      return new Triangle();
    }
  }
}

A Voir sur le même Sujet:

  • polymorphie java

Leave a Reply

Your email address will not be published. Required fields are marked *