Calendar.before (Objeto quando), por que Objeto?
Do javadoc deCalendar.before(Object when)
:
Retorna se este calendário representa um tempo antes do tempo representado pelo objeto especificado. Este método é equivalente a:
compareTo(when) < 0
se e somente se quando for uma instância do Google Agenda. Caso contrário, o método retornará false.
Por que ele aceita um Objeto se, quando alguém passa algo que não é uma instância do Calendário, retorna falso? Por que não aceitar apenas uma instância do Google Agenda? Isso me manteve observando resultados incorretos em uma funcionalidade por algum tempo.