Internalization or I18N refers to the capability of an Application to be able to serve users in multiple and different languages. Java has in-built support for Internalization. Java also provides formatting of numbers, currencies and adjustment of date and time accordingly.
Java Internationalization helps to make a java application handle different languages, number formats, currencies, region specific time formatting.
Localization or L10N is the adaptability of an application that is how an application adapts itself with a specific language, number formats, date and time settings etc.
A java application should be internationalized in order to be able to localize itself.
Following information items often varies with different time zones or cultures.
Messages
Date
Time
Number
Currency
Measurements
Phone Numbers
Postal Addresses
GUI labels
Java has a set of built-in classes which help in internationalization of an application. These classes are following:
Sr.No. | Class & Description |
---|---|
1 | Locale Represents a language along with country/region. |
2 | ResourceBundle Contains localized text or objects. |
3 | NumberFormat Use to format numbers/currencies as per the locale. |
4 | DecimalFormat Use to format numbers as per customized format and as per locale. |
5 | DateFormat Use to format dates as per locale. |
6 | SimpleDateFormat Use to format dates as per customized format and as per locale. |