4

この質問をするのは、すぐにエラー処理に重点を置いたインタビューを行うためですが、これは、C# のジュニア開発者としてほぼ 7 か月間働いているにもかかわらず、理解できていないことでもあります。

タイトルが示すように、適切なエラー ハンドラーがない例外フォームを処理する正しい方法を知りたいです。少し前に、私の同僚が、ひどいケースのシナリオを処理する責任がある一般的な例外ハンドラー (それが意味するものは何でも) について話しているのを聞いたことがあります。しかし、私は少しグーグルで調べましたが、そのようなことについての情報を見つけることができませんでした。

だから私の質問は - これらの種類の例外を処理する方法と私のサブ質問は - ジェネリック例外ハンドラーと呼ばれるものは本当にありますか?

4

3 に答える 3

5

一般的な例外ハンドラーと呼ばれるものは本当にありますか?

はい-それは、プログラムを終了する前に、例外をログに記録し、できるだけ多くの情報を保存するハンドラーと呼ばれるものです。そのようなハンドラーを設定する 1 つの方法は、オブジェクトのUnhandledExceptionイベントにハンドラーを追加することです。AppDomain

ジェネリック型が含まれておらず、ハンドラーが実行できるアクションがかなり制限されているため、.NET の意味での「ジェネリック」でも「ハンドラー」でもありません。処理する例外をブロックまたは再スローできる実際のハンドラーとは異なり、ラストチャンス "ハンドラー" はスローされたものを見ることができますが、実行を続行させることはできません。

于 2013-09-22T12:18:26.000 に答える
1

計画外の例外に対処する方法は、それらをキャッチし、開発者がバグを確認する場所にログを記録し、試行中のアクションを中止することです。これは、ユーザーにエラー メッセージを表示したり、アプリケーションをシャットダウンしたり、ASP.NET などのフレームワークに例外を処理させたりすることを意味する場合があります (一般的なエラー ページを表示することで "処理" します)。

バグが原因で、予期しない例外が常に発生する可能性があります。これに対処するための戦略が必要です (上記のとおり)。

「一般的な」例外ハンドラはcatch (Exception ex). つまり、キャッチオール。それは正式な用語ではありませんが、それはその人の意味でした.

于 2013-09-22T12:18:59.780 に答える