El método getInstance de la clase Calendar:
Código Java:
Ver original {
cal.sharedZone = true;
return cal;
}
El método createCalendar:
Código Java:
Ver original {
// 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
}
Como ves, en nuestro caso, se crea una instancia de la clase GregorianCalendar, que es lo que devuelve el método getInstance().
¿Qué es lo que no entiendes? jeje