next up previous contents index
suivant: Un autre exemple monter: Composition et délégation précédent: Définition par composition   Table des matières   Index


Délégation des méthodes

Nous allons définir une méthode de translation pour ces objets. Pour translater un cercle, il suffit de translater son centre ; pour translater un rectangle, il suffit de translater ses sommets. On dit que l'on délègue une méthode à d'autres objets, ici ses composants.

package geometrie;

class Cercle {
  // ...
  void translater(double dx, double dy) {
    centre.translater(dx, dy);
  }
}

class Rectangle {
  // ...
  void translater(double dx, double dy) {
    sg.translater(dx, dy);
    id.translater(dx, dy);
  }
}

Ces deux techniques, de composition et de délégation, sont très utilisées. Par exemple, on définit une « interface graphique » à partir de plusieurs « composants graphiques » (des boutons, barres de menus, menus, etc.) et on délégue à des « observateurs » le soin de traiter certains événements (presser un bouton, choisir un item dans un menu, etc.).



Rene' LALEMENT 2002-11-07