Java Reference
In-Depth Information
Die Schnittstelle
IDatumsFormat
definiert die Methode
datumAusgeben()
, die ein
Datum in einem bestimmten Format ausgeben soll:
// Datei: IDatumsFormat.java
public interface IDatumsFormat
{
public void datumAusgeben (int tag, int monat, int jahr);
}
Die Klasse
Datum
wird zum Speichern der Datumsinformationen verwendet. Sie spielt
in diesem Beispiel die Rolle des Kontextes. Über die Methode
setzeFormat()
kann
das Datumsformat, d. h. die Strategie, gesetzt werden. Mit der Methode
ausgeben()
wird das Datum ausgegeben und zwar entsprechend dem aktuell gesetzten Format.
Hier der Quellcode der Klasse
Datum
:
// Datei: Datum.java
public class Datum
{
private IDatumsFormat format = null;
private int tag, monat, jahr = 0;
public Datum (int tag, int monat, int jahr)
{
this.tag = tag;
this.monat = monat;
this.jahr = jahr;
}
public void setzeFormat (IDatumsFormat format)
{
this.format = format;
}
public void ausgeben()
{
// ruft die Methode datumAusgeben() des Objekts auf,
// auf das format zeigt.
format.datumAusgeben (tag, monat, jahr);
}
}
Die beiden Klassen
EuropaeischesFormat
und
AmerikanischesFormat
defi-
nieren zwei Datumsformate mit den dazugehörigen Ausgabefunktionen. Zuerst wird
die Klasse
EuropaeischesFormat
gezeigt, die ein Datum in der Form
tt.mm.jjjj
ausgibt:
// Datei: EuropaeischesFormat.java
public class EuropaeischesFormat implements IDatumsFormat
{
public void datumAusgeben (int tag, int monat, int jahr)
{
System.out.println ("Europaeisches Format: "
+ (tag > 9 ? tag : "0" + tag)
+ "."
Search WWH ::
Custom Search