Javaの例外
code:例外クラスの継承関係
java.lang.Throwable
|-- java.lang.Error -- 通常のアプリでは処理すべきでない重大な問題。OOMエラーなど。
`-- java.lang.Exception -- 検査例外。言語仕様としてcatch/throws宣言が強制される。
`-- java.lang.RuntimeException -- 実行時例外。検査例外のように強制はされない。
🤔 実行時例外が検査例外の子クラスなのはなんで?
try-with-resource