Javaでnullを受け付けないメソッドにnullを渡したらどうなるべきか

代表的な候補としては「IllegalArgumentException」と「NullPointerException」。
5
れぐたん @regtan

@daisuke_m 1)か2)でいいんじゃないの?あるいは4)でラップしてIAE投げるようにするとかw

2011-11-19 11:39:58
都元ダイスケ🍅 @daisuke_m

@regtan うーん、俺、汎用ライブラリっぽいもの書く事が多いんだよね〜。ライブラリが依存ライブラリ持ち過ぎるのはあんまよくない、という意識も少しあるw あと、1と2は大違いなんだぜw

2011-11-19 11:45:37
れぐたん @regtan

@daisuke_m 3系はパッケージ名変わったりなくなったメソッドとかあるしなぁ。今後考えたら3系に言った方がいいのかなぁ

2011-11-19 11:47:57

話がちょっと逸れてくる

なぎせ ゆうき @nagise

@daisuke_m そろそろnull許容型かどうかを型チェックできるようになるべき。C#のnullable的な

2011-11-19 11:49:33
都元ダイスケ🍅 @daisuke_m

@nagise 言語仕様側から攻めてこないでw

2011-11-19 11:50:43
しいたけ @yuroyoro

@daisuke_m nullを渡さないようになっているかCoqで証明する

2011-11-19 11:51:10
都元ダイスケ🍅 @daisuke_m

モヒカンに検出され始めたようですgkbr

2011-11-19 11:51:27
なぎせ ゆうき @nagise

null周りは工夫を凝らしてもどうにもならないな。個別にチェックするしかない。早く何とかして欲しい

2011-11-19 11:52:47
都元ダイスケ🍅 @daisuke_m

ちなみに Spring の Assert#notNull はIAE、GoogleのPreconditions#checkNotNull はNPEです。あああああ。

2011-11-19 11:53:09

よくわからなかったのでアンケートとってみた

都元ダイスケ🍅 @daisuke_m

nullを受け付けないメソッドにnullを渡した時の挙動 http://t.co/gRSgusCv

2011-11-20 12:16:59

結果、圧倒的にIAEでびっくり。