Sommaire

Exemple en Java

Nous présentons le code source Java de l’exemple, en commençant par l’interface ComposantGraphiqueVehicule.

public interface ComposantGraphiqueVehicule 
{ 
  void affiche(); 
}

La classe VueVehicule implante la méthode affiche de l’interface ComposantGraphiqueVehicule.

public class VueVehicule implements 
  ComposantGraphiqueVehicule 
{ 
  public void affiche() 
  { 
    System.out.println("Affichage du véhicule"); 
  } 
}

La classe Decorateur implante également la méthode affiche en déléguant l’appel. Elle détient un attribut qui contient une référence vers un composant. Ce dernier est passé en paramètre au constructeur de Decorateur.

public abstract class Decorateur implements 
  ComposantGraphiqueVehicule 
{ 
  protected ComposantGraphiqueVehicule composant; 
 
  public Decorateur(ComposantGraphiqueVehicule composant) 
  { 
    this.composant = composant; 
  }  ...