java.util.Date и getYear()

У меня следующая проблема в Java (я вижу, что у некоторых людей есть похожая проблема в JavaScript, но я использую Java)

System.out.println(new Date().getYear());
System.out.println(new GregorianCalendar().getTime().getYear());
System.out.println(this.sale.getSaleDate().getYear());
System.out.println(this.sale.getSaleDate().getMonth());
System.out.println(this.sale.getSaleDate().getDate());

returns

I/System.out( 4274): 112
I/System.out( 4274): 112
I/System.out( 4274): 112
I/System.out( 4274): 1
I/System.out( 4274): 11

Я не понимаю 112 бит, который, как я думал, должен был быть 2012. Что происходит? Является ли java.util.Date класс непригоден для использования? Я храню его в качестве поля в нескольких моих классов для хранения даты и времени. Что мне делать?

52
задан ROMANIA_engineer 4 May 2015 в 01:57
поделиться