Se si scrive un'applicazione che verrà distribuita in più lingue, dovrà essere tradotto tutto il testo visibile agli utenti.
Invece di tradurre la stringa nel file del codice di origine Java e creare un nuovo eseguibile per ogni lingua, Java consente di utilizzare insiemi di risorse per reindirizzare la stringa attraverso un file delle proprietà. Per ulteriori informazioni sull'esternalizzazione delle stringhe, vedere Esternalizzazione delle stringhe.
L'editor visuale per Java supporta la visualizzazione di stringhe esternalizzate. Queste verranno mostrate normalmente con i valori effettivi memorizzati nel file delle risorse. Tuttavia, la modifica delle proprietà del testo dopo l'esternalizzazione comporterà la sovrascrittura dell'esternalizzazione, non la modifica del file delle risorse. Per riflettere le modifiche nel file delle risorse, è necessario chiudere e riaprire l'editor visuale. Comunque, occorre prestare attenzione alla scelta delle stringhe da esternalizzare. Per impostazione predefinita, tutte le stringhe sono esternalizzate, anche quelle che non vengono visualizzate nell'interfaccia utente, ad esempio, i nomi dei tipi di caratteri.
Prima dell'esternalizzazione, la stringa verrà presentata nel codice di origine come valore letterale. Ad esempio:
ivjJFrame.setTitle("Hello World");
Una volta utilizzata la procedura guidata Esternalizzazione stringhe, la stringa verrà recuperata da una ricerca statica in un file che richiama il valore da un insieme di risorse.
ivjJFrame.setTitle(Messages.getString("Hello_World_1")); //$NON-NLS-1$
Viene esternalizzata la stringa che è l'argomento della chiamata al metodo setTitle, non la stringa che rappresenta la chiave dell'insieme, perché non è una stringa visibile agli utenti. Per indicare che questa stringa non è visibile agli utenti e pertanto non verrà recuperata dalla procedura guidata Esternalizzazione stringhe in un insieme, viene aggiunto il commento //$NON-NLS-1$ all'istruzione con il numero 1, che indica il riferimento alla prima ricorrenza della stringa nella riga.
Argomento principale: Sviluppo di classi Java con l'editor visuale