Java Reference
In-Depth Information
:Client
:KonkreteKlasse
schablonenmethode()
einschubmethode1()
einschubmethode2()
schablonenmethode() : result
Bild 4-28 Sequenzdiagramm des Schablonenmethode-Musters
4.9.3.4 Programmbeispiel
Im folgenden Beispiel enthält die Klasse
Urlaubskarte
als Schablonenmethode die
Methode
karteSchreiben()
. Die Methode
karteSchreiben()
gibt einen Stan-
dardtext (Methode
textSchreiben()
) aus sowie einen Zusatztext, der je nach
Verwendungszweck einer Karte unterschiedlich ausfallen kann. Die Ausgabe des
Zusatztextes wird daher auf Subklassen verlagert. Zu diesem Zweck wird die Methode
zusatzSchreiben()
als abstrakte Einschubmethode in der Unterklasse
Urlaubs-
karte
definiert und in der Schablonenmethode benutzt. Die Klasse
Urlaubskarte
hat folgendes Aussehen:
// Datei: Urlaubskarte.java
abstract public class Urlaubskarte
// abstrakte Klasse
{
final public void karteSchreiben()
// Schablonenmethode
{
textSchreiben();
zusatzSchreiben();
// abstrakte Methode wird augerufen
}
private void textSchreiben()
// normalen Text ausgeben
{
System.out.println (
"Ich bin gut an meinem Urlaubsziel angekommen.");
System.out.println (
"Das Essen schmeckt gut und die Gegend gefaellt mir.");
}
abstract protected void zusatzSchreiben();
// Einschubmethode
}
Die Einschubmethode
zusatzSchreiben()
wird exemplarisch in den zwei Klassen
UrlaubskarteAnFreunde
und
UrlaubskarteAnFirma
implementiert: es wird ein
Zusatztext für Urlaubskarten, die an Freunde geschickt werden, definiert, sowie ein
Search WWH ::
Custom Search