- - PR -
例外毎のメソッド一覧を調べる方法はありますか?
| 投稿者 | 投稿内容 | ||||
|---|---|---|---|---|---|
|
投稿日時: 2004-04-09 10:56
お世話になります。
APIを見ると、メソッドで発生し得る例外はわかるのですが、(例:parseIntだとNumberFormatException) 逆に、例外毎のメソッド一覧(例:NumberFormatExceptionが発生し得るメソッドはparseIntとコレとアレと・・・)のような感じで調べる方法はありますでしょうか? | ||||
|
投稿日時: 2004-04-09 11:12
src.jar を解凍して grep するのはどうでしょうか?
| ||||
|
投稿日時: 2004-04-09 11:37
方法としては確かにインギさんの仰る方法で調べられる気はしますが……。 それ以前の問題として「例外が発生した」……という場合には例外自体に発生元の情報が入っているハズですから、一覧を作ること自体にあまり意味がないような。 #リストとコードを見て考えるより、#printStackTraceした方が早いと思うのです 参考までに、どういう用途でその資料が求められているのか、教えてくださいませんか? | ||||
|
投稿日時: 2004-04-09 11:50
それもAPIで調べられますよ。 (NumberFormatExceptionの場合)
javadocの「使用」のページはかなり便利ですので活用しましょう。 # EclipseのAPIとか「使用」のページが出力されてないことが多いけど... ただ、この場合だと出力したjavadocに含まれている範囲しかわからないので、 手持ちのソースの中から調べたいならやはりgrepが手っ取り早いでしょうね。 | ||||
|
投稿日時: 2004-04-09 13:21
っこんな便利な機能があったとは。。。知りませんでした。
ありがとうございました。 | ||||
|
投稿日時: 2004-04-09 13:36
unibon です。こんにちわ。
おっしゃるとおり(javadoc の範囲内のみ)ですよね。 #以下、もとのご質問に対する直接の回答ではないですが。 たとえば NullPointerException などは多くのメソッドが throw するものですが、でも javadoc に書いてないことがほとんどです。 以前に、「NumberFormatException が非チェック例外なのはなぜ?」 http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=7503&forum=12 のスレッドで質問させていただきましたが、NumberFormatException は特別扱いの部類に入るので javadoc にもちゃんと書かれているようです。 原理的にあたりまえですが、非チェック例外はメソッドを呼んで動かしてみないことにはなにが throw されるかは厳密には分からないですね。 | ||||
|
投稿日時: 2004-04-09 13:56
基本的に例外クラスのインスタンスを作成するときはそれを投げるときだと
思いますのでeclipse上でNumberFormatExceptionのコンストラクタを右クリックし 参照→ワークスペースで検索してみると以下のクラスがヒットしました。 java.math.BigDecimal java.math.BigInteger java.lang.Byte java.lang.Integer java.lang.Logn java.lang.Short java.lang.Package java.lang.FloatingDecimal com.sun.corba.se.internal.core.GIOPVersion ただしjava.awt.Color#decodeはその内部でInteger#decodeを使用しており その例外をそのまま投げているだけなのでヒットしませんでした。 参考になれば。 | ||||
|
投稿日時: 2004-04-09 14:33
この方法だと、コンストラクタで例外が発生する場合もヒットしますね。 java.math.BigDecimal java.math.BigInteger | ||||
