1

を使用するのadvantageとは何ですか? また、いつ使用しなければならないか、いつ使用してはならないか?disadvantagestry/catch

4

2 に答える 2

2

アプリケーションでいくつかの外部コントロール/dll を使用していて、その機能について確信が持てず、その外部コントロールのエラーで自分のアプリケーションを停止させたくない場合は、Try/Catch を使用できます。そのコントロールで致命的なエラーが発生したため、アプリケーションが完全に停止するわけではありません。しかし、そのコントロールを使用するコードの部分は機能しません。

これは、独自のコードで Try Catch を使用して致命的なエラーを回避できるという意味ではありません。これは、アプリケーションに重大な欠陥を引き起こす可能性があります。

Try/Catch は通常、アプリケーションのデバッグに使用できます。その後、Try/Catch ブロックを削除できます。

于 2013-02-11T14:24:22.317 に答える
2

Try-Catch-Finally ステートメントは非常に強力な構造であり、ほとんどのシステムでプログラムを問題なく実行するのに役立ちます。これは、プログラムがクラッシュしないようにする優れたエラー処理メカニズムです。欠点がほとんどないため、このメカニズムの欠点を紹介したいと思います。まず、try-catch ステートメント内で作業しているときに、一部の内部メカニズムがキャッチされる例外をチェックしているため、パフォーマンスがいくらか低下しますが、このパフォーマンスの低下は現在のシステムでは無視でき、全体を開始するという考えと比較すると、この低下はほとんどありません。キャッチされない例外が原因でクラッシュが発生したため、最初からプログラムを作成します。第二に、try-catch メカニズムの概念は、最初は理解するのが少し難しいため、try-catch ステートメントをいつどこで使用するかをよく検討する必要があります。ただし、プログラミングの複雑な構造の概念を理解するのは最も東の 1 つです。利点の側面を見ると、例外をキャッチするメカニズムは、例外が発生した場合に何をしたいかを決定するのに役立ちます。たとえば、サーバーへの接続が失われたことを示す例外に対処するときにオンライン ゲームを考えると、ユーザーがオフラインでプレイできるようになり、別の人がそのユーザーをゲームから追い出し、切断されたことをゲーマーに伝えることができます。また、例外システムにより、フレームワーク コーダーは、フレームワークを使用しているときに例外が発生したことを通知するため、フレームワークを作成して使用することができます。この例外に遭遇した場合にどのように反応するかを決定します。最後に、エラー検出システムを簡素化するのに役立ちます。if-else ステートメント内で各メソッドを実行することを検討し、エラーが修正されるかどうかを確認してください。エラーはすぐに乱雑になり、しばらくすると独自のコードを読み取ることができなくなります。ただし、try-catch ブロックでは、失敗する可能性のある何十もの操作を実行でき、単純な try-catch ブロックにコードをカプセル化できます。今のところそれ以上のことは思い浮かびませんが、try-catch を使用することが有益である理由を理解するのに役立つことを願っています。

于 2013-02-11T15:13:54.063 に答える