INDEX
[Java]java.util.Calendar と 日時処理
1  NI-Lab.  2004/06/29(Tue) 07:50
[Java]java.util.Calendar と 日時処理

Calendar って、ドキュメントの不備が多くない?
日本語訳、ちょっと変だし。
2  NI-Lab.  2004/06/29(Tue) 07:53
http://www.gimlay.org/~javafaq/S100.html
S100: Date / Calendar

>存在しない日付をCalendarに設定した場合、setLenient()の引数にfalseを
>指定すれば、Calendar#getTime()などのメソッドを呼び出したときに、
>IllegalArgumentExceptionがthrowされます。

Calendar#.getTimeInMillis() でもOK.
protected な computeTime メソッドを呼び出したりしているところで、
IllegalArgumentException が スローされているっぽい。

JDK付属のソースコード(java.util.Calendar と java.util.GregorianCalendar)を追って、
private な lenient 変数を調べれば、
たぶん、どのメソッドで例外を吐いているかわかる。

このあたりも、ちゃんとドキュメントに書いて欲しいなぁ。
set しただけじゃ、例外投げてくれないし。

厳密な日付として利用できるか、チェック専用のメソッドが要るんじゃないの?