背景
「Effective Java」という本で、例外について勉強しています。
Effective Javaには、以下のように書かれていました。
回復可能な状態にはチェックされる例外を、プログラミングエラーには実行時例外を使用する
http://qiita.com/kata/items/bd129ba6113a61126389
質問
java.text.DateFormat#parse
は実行時例外のParseException
をスローします。
ParseException - 指定された文字列の先頭が解析できない場合。
Effective Javaの説明によれば、実行時例外をスローすべきだと思うのですが、なぜ検査例外をスローしているのでしょうか?
「文字列の解析ができない場合」は、呼び出し側が不正な引数を渡したとき、すわなちプログラミングエラーに該当すると思います。
また、Integer.parseInt
は、Effective Javaの説明通り、実行時例外NumberFormatException
をスローしています。
Integer
のパースとDate
のパースは何が違うのでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/03 05:38