Вы, наверное, пробовали это:
Calendar cal = Calendar.getInstance();
System.out.println(cal);
Что дает вывод, как это:
java.util.GregorianCalendar[time=1303645990437,areFieldsSet=true,areAllFieldsSet=true,...
Это метод toString в GregorianCalendar, который предоставляет все подробные сведения о его реализации, а не читаемое представление даты и времени.
В качестве эксперимента вы можете создать анонимный внутренний класс, расширяющий GregorianCalendar с другой реализацией toString:
Calendar cal = new GregorianCalendar() {
public String toString() {
return getTime().toString();
}
};
System.out.println(cal);
Это печатает:
Sun Apr 24 13:53:10 CEST 2011
(YMMV).
Однако это немного странно. Обычно вы используете DateFormat, как показано в нескольких других ответах, чтобы отделить представление вашего Календаря от его реализации.