code: public static synchronized void setDefault(Category category, ULocale newLocale) {
          Locale newJavaDefault = newLocale.toLocale();
          int idx = category.ordinal();
          defaultCategoryULocales[idx] = newLocale;
          defaultCategoryLocales[idx] = newJavaDefault;
          JDKLocaleHelper.setDefault(category, newJavaDefault);
      }
docs: Sets the default <code>ULocale</code> for the specified <code>Category</code>.
  This also sets the default <code>Locale</code> for the specified <code>Category</code>
  of the JVM. If the caller does not have write permission to the
  user.language property, a security exception will be thrown,
  and the default ULocale for the specified Category will remain unchanged.
  
  @param category the specified category to set the default locale
  @param newLocale the new default locale
  @see SecurityManager#checkPermission(java.security.Permission)
  @see java.util.PropertyPermission
  @hide unsupported on Android