Depuis le javadoc de Calendar.before(Object when)
:Calendar.before (Objet quand), pourquoi Object?
Renvoie si ce calendrier représente une heure avant l'heure représentée par l'objet spécifié. Cette méthode est équivalente à:
compareTo(when) < 0
si et seulement si une instance de calendrier est utilisée. Sinon, la méthode renvoie false.
Pourquoi accepte-t-il un objet si, lorsque quelqu'un passe quelque chose qui n'est pas une instance de Calendar, il renvoie false? Pourquoi ne pas simplement accepter une instance de calendrier? Cela m'a permis de regarder des résultats incorrects dans une fonctionnalité pendant un certain temps.
+1. Notez que l'objet Date (dont les problèmes de conception étaient censés adresser le calendrier) a une méthode before qui ne prend pas un objet (mais une autre date). Pas une API particulièrement cohérente. – Thilo
Par "vivre avec" voulez-vous dire décharge en faveur de Joda Time? – ILMTitan