, , , . , :
JLabel label = new JLabel();
label.setText(LocalizationManager.get("MY_LABEL_TEXT"));
LocalizationManager , MY_LABEL_TEXT . "" , .
; (.. "MY_LABEL_TEXT" ) , ( " !" "Bienvenido!" ) , . , , ( ) /.
: (1)
public class LocalizationManager {
private SupportedLanguage currentLanguage = SupportedLanguage.ENGLISH;
private Map<SupportedLanguage, Map<String, String>> translations;
public LocalizationManager() {
Map<String, String> english = new HashMap<String, String>();
Map<String, String> french = new HashMap<String, String>();
english.set("MY_LABEL_TEXT", "Good day!");
french.set("MY_LABEL_TEXT", "Beinvenido!");
translations.set(SupportedLanguage.ENGLISH, english);
translations.set(SupportedLanguage.FRENCH, french);
}
public get(String key) {
return this.translations.get(this.currentLanguage).get(key);
}
public setLanguage(SupportedLanguage language) {
this.currentLanguage = language;
}
public enum SupportedLanguage {
ENGLISH, CHINESE, FRENCH, KLINGON, RUSSIAN;
}
}
(1) , , .