Java 1.1 から移行しています。Java 5に。
一部のメソッドが非推奨になっていることに気付きました。たとえば、java.util.Date には非推奨の getYear() メソッドがあります。
私の質問は、getYear() メソッドが 1.1 のままである場合、Java 5 でも機能しますか?
非推奨であっても、引き続き機能します。彼らはそれを「より良いもの」(Calendar.get(Calendar.MONTH))に置き換えましたが、下位互換性のためにオリジナルが残されています。したがって、あなたの場合に使用しても問題ありません。
はい、元通りに動作します。将来の Java SE バージョンでのみ削除の対象となります。非推奨は純粋に文書化されており、その間にコードを更新する余地を与えるだけです。
現在、 のメソッドjava.util.Calendar
またはより改良されたJodaTime APIのいずれかを使用することになっています。標準 Java SE の日付/時刻 API の代替は JodaTime に似ており、まだ来る予定です ( JSR-310 )。JDK7で予定されていましたが、残念ながら間に合わないようです。
それは機能しますが、代替案について考え始めることは悪い考えではないかもしれません.
getYear は、何らかの理由で廃止されました。Date に関連付けられた年は、実際には Locale に依存するため、Calendar クラスに移動されました。データ自体から Locale 依存関係を抽出する Date クラスのこの改造は、他の Date/Calendar 関連の機能でも見られるものです。そのため、必要に応じてカレンダーに移行するのが賢明かもしれません。
とは言っても、私は Java の Date / Calendar のようなものには触れません。私は Apache Commons Lang などを使ってほとんどの日付 / 時刻関連のものを処理することを好みます。その点でも依田は人気があると聞きます。