code: public static Locale getDefault(Locale.Category category) {
          // do not synchronize this method - see 4071298
          // it's OK if more than one default locale happens to be created
          switch (category) {
          case DISPLAY:
              if (defaultDisplayLocale == null) {
                  defaultDisplayLocale = initDefault(category);
              }
              return defaultDisplayLocale;
          case FORMAT:
              if (defaultFormatLocale == null) {
                  defaultFormatLocale = initDefault(category);
              }
              return defaultFormatLocale;
          default:
              assert false: "Unknown Category";
          }
          return getDefault();
      }
docs: Gets the current value of the default locale for the specified Category
  for this instance of the Java Virtual Machine.
  <p>
  The Java Virtual Machine sets the default locale during startup based
  on the host environment. It is used by many locale-sensitive methods
  if no locale is explicitly specified. It can be changed using the
  setDefault(Locale.Category, Locale) method.
  
  @param category - the specified category to get the default locale
  @throws NullPointerException - if category is null
  @return the default locale for the specified Category for this instance
  of the Java Virtual Machine
  @see #setDefault(Locale.Category, Locale)
  @since 1.7