NETJVM 

NET TRY (試行)文

TRY...CATCH...FINALLY...END-TRY構造は、構造化された例外処理の基礎となる。 TRYブロックによって、その実行期間中に発生するかもしれない例外コードの節をテストすることができる。CATCHブロックは、TRYブロックの実行期間中に例外が発生した場合、処理したいと思う例外の型を特定しなければならない。FINALLYブロックによって、例外の発生の有無にかかわらず、TRYブロックに続くコードの節を実行することができる。

一般形式

構文規則

  1. 一意名-1は、 System.ExceptionまたはSystem.Exceptionのサブクラスのオブジェクト参照でなければならない。

一般規則

  1. TRY文の実行は、命令文-1から始まる。

  2. 命令文-1の実行期間中に例外が発生した場合、各CATCH指定が指定された順序で、一意名-1が処理が実行された例外のクラスの下位のクラスであるか同等のクラスものである、指定が見つかるまで、調べられる。そのような 一意名-1が見つかった場合、それと関連した命令文-2が実行される。実行は、命令文-2で指定された各文に対する規則にもとづき、継続する。明示的な制御の移転を引き起こす、制御の分岐文または条件文が実行された場合、制御は、その文に対応する規則に従って移転される。それ以外では、命令文-2の実行完了後、指定されている場合は、命令文-3に、またはTRY文の終わりに、制御が移される。

  3. 命令文-1の実行期間中に例外が発生しなかった場合、実行は、命令文-1に指定された各文の規則に従い継続する。明示的な制御の移転を引き起こす、制御の分岐文または条件文が実行された場合、その文に対応する規則に従い制御が移される。それ以外では、命令文-1の実行完了後、指定されている場合は、命令文-3に、またはTRY文の終わりに、制御が移される。

  4. 命令文-3の実行は、命令文-3で指定された各文に対応する規則に従い継続する。明示的な制御の移転を引き起こす、制御の分岐文または条件文が実行された場合、その文に対応する規則に従い制御が移される。それ以外では、命令文-3の実行完了後、TRY文の終わりに、制御が移される。