タグ

資料と例外処理に関するsnjxのブックマーク (2)

  • Java 例外処理 Exception Handling - kaishitaeiichiの日記

    職場で、「例外処理どうしてます?」ということをきかれた。 自分の経験とか調べたことを書いておこう。 例外処理 アプリケーション実行中に、なんらかの問題が発生することがある。 問題が発生したんであれば、問題があったという事実を確実に知っておきたい。実装中でも、運用中でも、問題があるのに何も気づけないのは困る。 正常に動作しているうちは、それを専門とするオブジェクトにおまかせだけど、異常が発生したら、呼び出し元でも知っておきたいというはなしだ。 Javaでは、例外という仕組みをつかって、なんからの問題、「障害が発生した!」ということを検出することができる。ソースコードで、問題が発生した箇所で、問題を、例外(Exceptionクラス)というもので表して、それを呼び出し元に投げる。呼び出し元というのは、そのメソッドを直接呼んだメソッド、あるいは呼び出し元をたどって、最終的には、mainメソッドとか

    Java 例外処理 Exception Handling - kaishitaeiichiの日記
    snjx
    snjx 2017/07/27
    検査例外と非検査例外。
  • Javaの検査例外は、呼び出し側で「どんなに注意しても防げない」異常系 - Qiita

    注:記事の内容はJavaで公式にドキュメントされているものではなく筆者の見解です。とはいえクラスを設計する上で有用な指針たり得ると思われるので公開したものです。 おさらい - 検査例外と非検査例外 Javaの例外クラスには「catchしないとコンパイルエラーになる」検査例外(チェック例外、checked exception)とそうでない非検査例外(非チェック例外、unchecked exception)があります。 検査例外は最近は嫌われる傾向がありC#では採用されていませんしAltJava言語も軒並み不採用、さらにはJavaの新しめのライブラリにも非検査例外しか投げないものが出てきていますが、適切に使えば安全なプログラミングのための強力な武器であり、検査例外の有意義さについては @irxground さんの Javaの検査例外の存在意義 をご覧ください。 例外クラスを自作する場合、検査

    Javaの検査例外は、呼び出し側で「どんなに注意しても防げない」異常系 - Qiita
  • 1