java.util.spi
public abstract class CurrencyNameProvider extends LocaleServiceProvider
CurrencyNameProvider
provides localized
versions of the symbols that represent a particular
currency. Note that currency symbols are regarded
as names, and thus a null
value may
be returned, which should be treated as a lack of
support for the specified Locale
.Modifier | Constructor and Description |
---|---|
protected |
CurrencyNameProvider()
Constructs a new
CurrencyNameProvider . |
Modifier and Type | Method and Description |
---|---|
abstract String |
getSymbol(String currencyCode,
Locale locale)
This method returns the symbol which precedes or follows a
value in this particular currency.
|
getAvailableLocales
protected CurrencyNameProvider()
CurrencyNameProvider
.
Provided for implicit invocation by subclasses.public abstract String getSymbol(String currencyCode, Locale locale)
This method returns the symbol which precedes or follows a value in this particular currency. The returned value is the symbol used to denote the currency in the specified locale.
For example, a supplied locale may specify a different symbol
for the currency, due to conflicts with its own currency.
This would be the case with the American currency, the dollar.
Locales that also use a dollar-based currency (e.g. Canada, Australia)
need to differentiate the American dollar using 'US$' rather than '$'.
So, supplying one of these locales to getSymbol()
would
return this value, rather than the standard '$'.
In cases where there is no such symbol for a particular currency,
null
should be returned.
currencyCode
- the ISO 4217 currency code, consisting
of three uppercase letters from 'A' to 'Z'locale
- the locale to express the symbol in.null
if one is
unavailable.NullPointerException
- if the locale is null.IllegalArgumentException
- if the currency code is
not in the correct format
or the locale is not one
returned by
LocaleServiceProvider.getAvailableLocales()
Currency.getSymbol(java.util.Locale)