@634

VB.NET - 例外

Advertisement

例外

例外というメカニズムを利用することにより、柔軟なエラー対応をすることができる。またエラー発生時にエラー処理を強制することが可能となるため、安全性が向上する。

例外はオブジェクトとして扱われ、ほとんどの例外はExceptionクラスから派生する。

例外のスロー

例外を発生させることを例外のスローという。呼び出し元に対して例外を投げる(スローする)のである。例外をスローする場合、Throwキーワードを使用する

サンプルコード
Class ExceptionTest
    Public Function ExceptionTest()
        Throw New Exception
    End Function
End Class

Module Module1
    Sub Main()
        Dim TestClass As ExceptionTest
        TestClass = New ExceptionTest
        TestClass.ExceptionTest()
    End Sub
End Module
実行結果
Exception1
呼び出し元に対して例外がスローされた。

例外処理

Try-Catch-Finallyブロックを使用して例外発生時の処理を記述することができる。

書式
Try
    ' 処理
Catch 例外変数名 As 例外クラス
    ' 処理
Finally
    ' 処理
End Try
Tryブロックの中で発生した冷害をCatchブロックで捕獲して例外対応処理を実行する。Finallyブロックは、例外発生時・例外未発生時どちらも実行が保証されるブロックで、オブジェクトの解放処理などに利用される。

サンプルコード
Class ExceptionTest
    Public Function ExceptionTest()
        Throw New Exception
    End Function
End Class

Module Module1
    Sub Main()
        Try
            Dim TestClass As ExceptionTest
            TestClass = New ExceptionTest
        TestClass.ExceptionTest()
        Catch e As Exception
            Console.WriteLine(e.Message())
        Finally
            Console.WriteLine("Finallyブロック")
        End Try
    End Sub
End Module

結果
種類 System.Exception の例外がスローされました。
Finallyブロック

例外の定義

例外を独自に作成する場合、Exceptionクラスを継承したクラスを作成する。
Class MyException
    Inherits Exception

End Class

Advertisement

ショートカット

634
634ブログ
このカテゴリのトップページに戻る
Incubator(Pukiwiki)
634ラボ
   UIコレクションギャラリー
   ZO-3ジェネレーター

サイト検索


Y!ログール