Я мигрирую от Java 1.1. к Java 5.
Я замечаю, что некоторые методы были удержаны от использования, например, java.util. Дата имеет getYear () метод, который удерживается от использования.
Мой вопрос состоит в том, если getYear () метод оставят, как это находится в 1,1, будет он все еще функционировать в Java 5
Да, он будет работать как и раньше. Он подлежит удалению только в будущих версиях Java SE. Депривация носит чисто документальный характер и просто дает вам возможность обновить код в это время.
В настоящее время вы должны использовать либо методы java.util.Calendar
либо более совершенный JodaTime API. Замена API даты/времени в стандартной Java SE будет похожа на JodaTime и все еще должна появиться (JSR-310). Он был запланирован для JDK7, но, к сожалению, похоже, не успеет.
Он по-прежнему будет работать, даже если он устарел. Они заменили его на «лучший» (Calendar.get (Calendar.MONTH).), Но оригинал оставлен там с целью обратной совместимости. Так что использовать его в вашем случае не проблема.
Это будет работать, но, возможно, будет неплохо начать думать об альтернативах.
getYear был устаревшим по причине; год, связанный с датой, на самом деле зависит от локали, и поэтому был перенесен в класс Calendar. Эта переделка класса Date, которая извлекает зависимость от локали из самих данных, является тем, что вы также видите в других функциях, связанных с датами/календарями. Поэтому было бы разумно перенести его в класс Calendars, где это уместно.
Тем не менее, я бы и палкой не стал трогать java для работы с датами/календарями, я предпочитаю такие вещи, как Apache Commons Lang и другие для работы с большинством вещей, связанных с датой/временем. Я также слышал, что Yoda популярна в этом отношении.