В чем может быть разница между получением даты и времени с помощью
Calendar.getInstance ()
и
new GregorianCalendar ()
?
Поиск в источнике Calendar.getInstance () :
private static Calendar createCalendar(TimeZone zone, Locale aLocale) {
// If the specified locale is a Thai locale, returns a BuddhistCalendar
// instance.
if ("th".equals(aLocale.getLanguage())
&& ("TH".equals(aLocale.getCountry()))) {
return new sun.util.BuddhistCalendar(zone, aLocale);
} else if ("JP".equals(aLocale.getVariant())
&& "JP".equals(aLocale.getCountry())
&& "ja".equals(aLocale.getLanguage())) {
return new JapaneseImperialCalendar(zone, aLocale);
}
// else create the default calendar
return new GregorianCalendar(zone, aLocale);
}
Таким образом, getInstance()
вернет значение Calendar
на основе значений по умолчанию Locale
и TimeZone
. .
Calendar.getInstance()
даст вам Calendar
, используя часовой пояс по умолчанию и локаль , что может привести к GregorianCalendar
, BuddhistCalendar
или JapaneseImperialCalendar
.
GregorianCalendar
всегда даст вам, ну, григорианский календарь.