Wenn Sie eine Anwendung schreiben, die zur Benutzung in verschiedenen Sprachen implementiert wird, muss jeder Text, der für den Benutzer sichtbar ist, übersetzt werden.
Statt die Zeichenfolge in der Java-Quellendatei zu übersetzen und eine neue ausführbare für jede Sprache erstellen zu müssen, ermöglicht Ihnen Java die Verwendung von Ressourcenpaketen, um die Zeichenfolge durch eine Eigenschaftsdatei umzuleiten. Weitere Informationen über die Auslagerung von Zeichenfolgen finden Sie unter Zeichenfolgen auslagern.
Der Visual Editor für Java unterstützt die Darstellung der ausgelagerten Zeichenfolgen. Sie werden normalerweise mit den tatsächlich in der Ressourcendatei gespeicherten Werten angezeigt. Jedoch führt eine Änderung der Texteigenschaften nach der Auslagerung dazu, dass die Auslagerung überschrieben und nicht die Ressourcendatei geändert wird. Um Änderungen in der Ressourcendatei widerzuspiegeln, muss der Visual Editor geschlossen und wieder geöffnet werden. Gehen Sie bei der Auswahl von Zeichenfolgen für die Auslagerung sorgfältig vor. Standardmäßig werden alle Zeichenfolgen ausgelagert, selbst Zeichenfolgen, die nicht in der GUI angezeigt werden. Zum Beispiel Schriftartnamen.
Vor der Auslagerung der Zeichenfolge wird die Zeichenfolge als Literal in der Quelle dargestellt. Beispiel:
ivjJFrame.setTitle("Hello World");
Nach der Verwendung des Assistenten für die Auslagerung von Zeichenfolgen wird die Zeichenfolge von einer statischen Suchfunktion in einer Datei abgerufen, die den Wert von einem Ressourcenpaket abruft.
ivjJFrame.setTitle(Messages.getString("Hello_World_1")); //$NON-NLS-1$
Die Zeichenfolge, die das Argument für den Methodenaufruf 'setTitle' ist, wird ausgelagert, aber die Zeichenfolge, die den Bündelschlüssel darstellt, wird nicht ausgelagert, da es sich nicht um eine für den Benutzer sichtbare Zeichenfolge handelt. Um anzuzeigen, dass es sich bei dieser Zeichenfolge um eine nicht für den Benutzer sichtbare Zeichenfolge handelt, so dass der Assistent für ausgelagerte Zeichenfolgen nicht versucht, diese aus einem Bündel abzurufen, wird der Kommentar //$NON-NLS-1$ der Anweisung hinzugefügt, wobei die 1 anzeigt, dass sie sich auf das erste Auftreten der Zeichenfolge in der Zeile bezieht.
Übergeordnetes Thema: Entwicklung von Java-Klassen mit dem Visual Editor