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;
}
public void...