回答編集履歴
1
確認方法を追記
answer
CHANGED
@@ -1,4 +1,6 @@
|
|
1
1
|
[Exception](http://docs.oracle.com/javase/jp/8/api/java/lang/Exception.html)のクラス階層を見てみてください。[Throwable](http://docs.oracle.com/javase/jp/8/api/java/lang/Throwable.html)を継承していることが解ると思います。
|
2
2
|
> Throwableクラスは、Java言語のすべてのエラーと例外のスーパー・クラスです。このクラス(またはそのサブクラスの内の1つ)のインスタンスであるオブジェクトだけがJava仮想マシンによってスローされるか、Javaのthrow構文によってスローされます。
|
3
3
|
|
4
|
-
というわけで、`Throwable`を継承しているが`Exception`は継承していないようなクラス(これも上記ページを見るとわかりますが、例えば標準ライブラリにあるものでは[Error](http://docs.oracle.com/javase/jp/8/api/java/lang/Error.html)継承クラス)がthrowされているのでしょう。
|
4
|
+
というわけで、`Throwable`を継承しているが`Exception`は継承していないようなクラス(これも上記ページを見るとわかりますが、例えば標準ライブラリにあるものでは[Error](http://docs.oracle.com/javase/jp/8/api/java/lang/Error.html)継承クラス)がthrowされているのでしょう。
|
5
|
+
|
6
|
+
`catch (Exception e)` の代わりに `catch (Throwable e)` とすることでcacthできます(ただしここでcatchするのが正しいとは限りません。上に記載したリンク先等を読んで判断してください)。
|