But : pouvoir décorer un texte par des tags HTML (balises i, u, b) :
Complétez le code suivant :
/** Interface implémentée par le composant et les décorateurs **/ interface TexteI{ public String toHTML(); } // ICI, classes du pattern décorateur à implémenter /** Code client **/ public class HTML{ public static void main(String[] args){ String theString = "Un texte dans une page HTML"; TexteI t1 = new Texte(theString); System.out.println("=== pas de décoration ==="); System.out.println(t1.toHTML()); TexteI t2 = new I(new Texte(theString)); System.out.println("\n=== décoration avec I ==="); System.out.println(t2.toHTML()); TexteI t3 = new B(new I(new Texte(theString))); System.out.println("\n=== décoration avec I et B ==="); System.out.println(t3.toHTML()); TexteI t4 = new U(new I(new Texte(theString))); System.out.println("\n=== décoration avec I et U ==="); System.out.println(t4.toHTML()); } }de manière à obtenir l'exécution suivante :
java HTML
=== pas de décoration === Un texte dans une page HTML === décoration avec I === <i>Un texte dans une page HTML</i> === décoration avec I et B === <b><i>Un texte dans une page HTML</i></b> === décoration avec I et U === <u><i>Un texte dans une page HTML</i></u>