Questa regola contrassegna le istanze del metodo java.util.Locale getDefault().
Questo metodo viene contrassegnato perché c'è un cambiamento del comportamento ad esso associato. Secondo la documentazione Java SE 7 and JDK 7 Compatibility in Java 7, l'utente può ora accedere alla locale di visualizzazione (la rappresentazione visiva di una stringa ad esempio) o alla locale del formato (il formato effettivo di una stringa ad esempio). Per poter realizzare ciò, Java 7 ha aggiunto il nuovo metodo: getDefault(Locale.Catgory cat) dove Locale.Category è una nuova enumerazione con le opzioni DISPLAY o FORMAT. Utilizzando questo nuovo metodo, l'utente può ottenere la locale specifica che gli interessa.
Il metodo precedente, contrassegnato da questa regola, getDefault() è stato aggiornato in modo da risultare equivalente alla chiamata getDefault(Locale.DISPLAY). Prima di Java 7, il metodo getDefault() risultava equivalente a getDefault(Locale.FORMAT)
La locale di visualizzazione determina la visualizzazione dei dati in un'interfaccia utente, quale una finestra o una finestra di dialogo. Ad esempio, i dati possono essere visualizzati in una lingua diversa rispetto a quella del sistema host.
La locale del formato determina come i dati vengono formattati. Ad esempio, utilizzando la locale del formato degli Stati Uniti, la data 04 ottobre 2011 viene presentato come 10/04/2011 mentre la stessa data con la locale del formato del Regno Unito viene visualizzata come 10.04.2011.
L'utente deve valutare il codice e determinare se è influenzato dalla modifica del comportamento, eseguire qualsiasi test appropriato ed apportare le modifiche necessarie al codice.
Secondo la documentazione, l'utente può conservare il comportamento precedente di JDK 6 impostando la proprietà sun.locale.formatasdefault su true o modificando il codice affinché utilizzi il nuovo metodo getDefault(cat Locale.Category). In questo caso, il parametro cat sarà Locale.Category.FORMAT
Per ulteriori informazioni, consultare la API di Java 7: