compact1, compact2, compact3
java.text.spi

## Class DecimalFormatSymbolsProvider

- java.lang.Object
- - java.util.spi.LocaleServiceProvider
  - - java.text.spi.DecimalFormatSymbolsProvider

-     public abstract class DecimalFormatSymbolsProvider
      extends LocaleServiceProvider

  An abstract class for service providers that provide instances of the `DecimalFormatSymbols` class.

  The requested `Locale` may contain an extension for specifying the desired numbering system. For example, `"ar-u-nu-arab"` (in the BCP 47 language tag form) specifies Arabic with the Arabic-Indic digits and symbols, while `"ar-u-nu-latn"` specifies Arabic with the Latin digits and symbols. Refer to the Unicode Locale Data Markup Language (LDML) specification for numbering systems.

  Since:
    1.6
  See Also:
    `Locale.forLanguageTag(String)`, `Locale.getExtension(char)`

- - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `DecimalFormatSymbolsProvider()` | Sole constructor.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract DecimalFormatSymbols` | `getInstance(Locale locale)` | Returns a new `DecimalFormatSymbols` instance for the specified locale.

    - ### Methods inherited from class java.util.spi.LocaleServiceProvider

      `getAvailableLocales, isSupportedLocale`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### DecimalFormatSymbolsProvider

          protected DecimalFormatSymbolsProvider()

      Sole constructor. (For invocation by subclass constructors, typically implicit.)

  - ### Method Detail

    - #### getInstance

          public abstract DecimalFormatSymbols getInstance(Locale locale)

      Returns a new `DecimalFormatSymbols` instance for the specified locale.
      Parameters:
        `locale` - the desired locale
      Returns:
        a `DecimalFormatSymbols` instance.
      Throws:
        `NullPointerException` - if `locale` is null
        `IllegalArgumentException` - if `locale` isn't one of the locales returned from `getAvailableLocales()`.
      See Also:
        `DecimalFormatSymbols.getInstance(java.util.Locale)`

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.