Java Reference
In-Depth Information
Eine Anwendung liest Wörter ein und übersetzt sie aufgrund der Informationen, die in
Wörterbüchern enthalten ist. Wörterbücher sollen als Plug-ins geladen werden und die
Schnittstelle
IWoerterbuch
implementieren. Beim Start der Anwendung kümmert
sich die Klasse
WoerterbuchManager
um das Laden der verfügbaren Wörterbücher
als Plug-ins. Hierfür wird die externe Komponente
ServiceLoaders
(seit Java 1.6 im
JRE enthalten) eingesetzt.
Die Klasse
DeutschEnglischWoerterbuch
bietet die gewünschte Funktionalität
für das Übersetzen von deutschen Begriffen in englische Begriffe. Für die französische
Sprache ist die Klasse
DeutschFranzoesischWoerterbuch
zuständig.
Alle Wörterbücher müssen einen Standardkonstruktor haben. Dies ist erforderlich, da-
mit der
ServiceLoader
eine Instanz dieser Klasse dynamisch erzeugen kann. Hier
die Klasse
Woerterbuch
:
// Datei: Woerterbuch.java
import java.util.List;
public class Woerterbuch
{
private WoerterbuchManager wm;
// Konstruktor
public Woerterbuch()
{
// erzeugt Instanz des WoerterbuchManagers als Singleton
wm = WoerterbuchManager.gibInstanz();
wm.ladeVorhandeneWoerterbuecher();
}
// Uebersetzt Eingabe in verschiedene Sprachen
public String uebersetze (String wort, String sprache)
{
String uebersetztesWort = wm.gibUebersetzung (sprache, wort);
if (!ueberpruefeWort(uebersetztesWort))
{
return "Fehler, Wort nicht im Woerterbuch vorhanden!";
}
return uebersetztesWort;
}
// Liste aller vorhandenen Woerterbuecher zurueckgeben
public List<String> gibAlleWoerterbuecher()
{
return wm.gibAlleWoerterbuecher();
}
// Ueberprueft, ob das Wort im Woerterbuch vorhanden ist
private boolean ueberpruefeWort (String wort)
{
boolean enthalten = true;
Search WWH ::
Custom Search