C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#での例外の伝播


例外の伝播は、C#で例外処理がどのように機能するかによって理解できます。

試行では、例外が発生すると、対応するキャッチブロックがチェックされます。これは、例外をキャッチできるかどうかを確認するために行われます。一致する例外が見つからない場合、例外は上位レベルのtryブロックに伝播されます。これは、例外がキャッチされるまで繰り返されます。例外がキャッチされない場合、プログラムの実行は終了します。

上記の概念は、ネストされたtryステートメントを示す以下の例で説明されています。

using System;
using System.Text;
public class Demo {
   public static void Main() {
      try {
         try {
            throw new ArgumentException();
         }catch (NullReferenceException e) {
            Console.WriteLine("catch one");
         } finally {
            Console.WriteLine("finally one");
         }
      } catch (Exception e) {
         Console.WriteLine("catch two");
      } finally {
         Console.WriteLine("finally two");
      }
      Console.ReadLine();
   }
}

出力

finally one
catch two
finally two

  1. JSPで例外を処理する方法は?

    タグはスロー可能をキャッチします それはその本体で発生し、オプションでそれを公開します。これは、エラー処理と問題へのより適切な対処に使用されます。 属性 タグには次の属性があります- 属性 説明 必須 デフォルト var 本体の要素によってスローされた場合にjava.lang.Throwableを保持する変数の名前。 いいえ なし 例 <%@ taglib uri = "https://java.sun.com/jsp/jstl/core" prefix = "c" %> <html>  

  2. C++での例外処理の基本

    C ++では、例外処理はランタイムエラーを処理するプロセスです。例外は、C++で実行時にスローされるイベントです。すべての例外は、std::exceptionクラスから派生します。処理可能なランタイムエラーです。例外を処理しない場合は、例外メッセージを出力してプログラムを終了します。 例外は、C ++標準では、プログラム内で使用できるクラスとして定義されています。親子クラス階層の配置を以下に示します。 C++の一般的な例外クラスは次のとおりです。 例外 説明 std ::exception これは、すべての標準C++例外の例外および親クラスです。 std ::