此規則會標示 java.util.Locale getDefault() 方法的實例。
標示此方法是因為它有相關聯的行為變更。 根據 Java 7 中的 Java SE 7 和 JDK 7 相容性文件,現在,使用者可以存取顯示語言環境(如字串的視覺化呈現)或格式語言環境(如字串的實際格式)。 為了有助於做到這一點,Java 7 新增了新方法 getDefault(Locale.Catgory cat),其中 Locale.Category 是一個含有 DISPLAY 或 FORMAT 選項的新列舉。 使用者可以利用這個新方法來取得想要的特定語言環境。
此規則會加以標示的舊方法 getDefault() 已更新為相當於呼叫 getDefault(Locale.DISPLAY)。 在 Java 7 之前,getDefault() 方法用來傳回 getDefault(Locale.FORMAT) 的對等項目
顯示語言環境會決定在使用者介面(例如視窗或對話框)上顯示資料的方式。 比方說,資料有可能以不同於主機系統的語言來顯示。
格式語言環境決定格式化資料的方式。 比方說,當使用「美國」格式語言環境時,2011 年 10 月 4 日會呈現為 10/04/2011,當使用「英國」格式語言環境時,會呈現為 04/10/2011。
使用者必須評估程式碼,然後判斷它是否受行為變更的影響,尋求任何適當的測試,並對程式碼進行任何必要的變更。
根據文件,使用者可以將 sun.locale.formatasdefault 內容設為 true,或變更程式碼來使用新方法 getDefault(Locale.Category cat),以保留舊的 JDK 6 行為。 在這種情況下,cat 參數將是 Locale.Category.FORMAT
如需相關資訊,請參閱 Java 7 API: