ホームページ  >  に質問  >  本文

java - コード内で RuntimeException を直接スローすることが推奨されないのはなぜですか?

Error、RuntimeException、Throwable、Exception などの一般的な例外を使用すると、呼び出しメソッドがアプリケーション生成のエラーとは異なる方法でシステム生成の真の例外を処理できなくなります。

違反コード例

リーリー

適合コード

リーリー

曾经蜡笔没有小新曾经蜡笔没有小新2667日前1452

全員に返信(5)返信します

  • 滿天的星座

    滿天的星座2017-06-30 09:58:07

    これは簡単です。
    簡単な例えを使用して、ログインを作成します。用户不存在/密码错误... 这些错误类型, 如果你直接使用RuntimeException コードは次のように記述します。 リーリー

    例外をキャッチする

    リーリー


    逆に、カスタム例外は次のように実装されます:

    リーリー

    例外をキャッチする

    リーリー

    message を介して例外処理ロジックを判断することには多くの欠点があります。たとえば、message が動的である場合、それは正確に処理されません。一般的な例外タイプを定義します。ビジネス コードによる判断がより正確になります。また、例外タイプの定義が減り、コードの冗長性も減ります。以下は、私が行った方法である kotlin コードの一部です。現在使用しています。

    リーリー

    返事
    0
  • 女神的闺蜜爱上我

    女神的闺蜜爱上我2017-06-30 09:58:07

    説明が非常に明確なので、キャプチャと処理が簡単です

    返事
    0
  • 扔个三星炸死你

    扔个三星炸死你2017-06-30 09:58:07

    例外名は意味のあるものでなければなりません、RuntimeException 名は無意味です

    返事
    0
  • 怪我咯

    怪我咯2017-06-30 09:58:07

    Exception を直接スローすると、Nginx は定義したメッセージを上書きし、特定の情報を表示できなくなります。
    推奨されるアプローチは、自分で例外を定義し、RuntimeException を継承することです。これにより、例外が何であるかが分かり、問題を見つけやすくなります。

    返事
    0
  • typecho

    typecho2017-06-30 09:58:07

    実行時例外をキャッチする必要はありません

    返事
    0
  • キャンセル返事