>>185
例えば実数のルート(平方根)を求める関数を作ることを考えてみろ。
引数はdouble, 返値もdoubleにしたいはずだ。
しかしその関数に-5とか入れたらどうなる?エラーを起こしたことを知らせるしかない。
下手にdoubleで答えも返せないし、しょうがなく投げるのが例外で、
それを捉えるのがtry catchだ。

つまり、if elseとtry catchはまったくの別物。