アプリ版:「スタンプのみでお礼する」機能のリリースについて

アサーションと例外処理の違いは何ですか?
あまり変わらないような気がするのですが?

A 回答 (3件)

例外処理は、常に有効です。


アサーションは有効・無効を切り替えることができます。

つまり、例外処理は、プログラムの動作に必要な部分です。
アサーションは主にデバッグのときに役立つ機能です。

※そういえば私もアサーション使ったことなかったな。
    • good
    • 0

理解の範囲で簡単に。

アサーションはアプリケーションで「論理的に起こりえない状態」をチェックするために使用します。バグが無く正しく動くことを検証するためのコードですね。

参考URL:http://java.sun.com/j2se/1.4/ja/docs/ja/guide/la …
    • good
    • 0

動きのイメージで「あまり変わらないような気がする」というのは同感です。


逆に言うと、開発者が「意識的に区別」するべきものだと思います。
乱暴に言ってしまう、
アサーションはプログラムのバグを検出するもの
(だから本番稼動時はオフにすることが多い)で、
例外は文字通り「例外」を検出するものです。
大事なのは「例外」の定義なのですが、
参考URLの内容を見ていただけるとわかるように
「アプリケーションで予想していない動き」
が例外です。
一方、「こんな状態は不正」だというのを
調べるのがアサーションではないでしょうか。

参考URL:http://www.javaworld.jp/technology_and_programmi …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!