カテゴリ: VB.NET 更新日: 2025/12/06

VB.NETのメソッドで例外処理を行う方法を初心者向けに解説

VB.NETのメソッドで例外処理を行う方法
VB.NETのメソッドで例外処理を行う方法

先生と生徒の会話形式で理解しよう

生徒

「先生、VB.NETでメソッドを作るときにエラーが出たらどうすればいいですか?」

先生

「VB.NETには例外処理という仕組みがあります。これを使うと、プログラムの実行中にエラーが起きても、安全に処理を続けることができます。」

生徒

「エラーが起きたら止まっちゃうんじゃないんですか?」

先生

「通常はそうですが、例外処理を使えばエラーをキャッチして別の処理に切り替えられます。これでプログラムがクラッシュするのを防げます。」

1. VB.NETの例外処理とは?

1. VB.NETの例外処理とは?
1. VB.NETの例外処理とは?

VB.NETの例外処理は、プログラムの実行中に起きる予期せぬエラー(例外)を検知して処理する仕組みです。例えば、0で割る計算や存在しないファイルの読み込みは通常エラーになりますが、例外処理を使うとプログラムが止まらずに安全に処理を続けられます。

2. Try...Catch文の基本

2. Try...Catch文の基本
2. Try...Catch文の基本

VB.NETでは、例外処理を行う基本の構文がTry...Catchです。Tryブロック内に危険な処理を書き、エラーが起きた場合はCatchブロックで処理を受け取ります。


Sub DivideNumbers(a As Integer, b As Integer)
    Try
        Dim result As Double = a / b
        Console.WriteLine("結果: " & result)
    Catch ex As DivideByZeroException
        Console.WriteLine("エラー: 0で割ることはできません")
    End Try
End Sub

DivideNumbers(10, 2) ' 結果: 5
DivideNumbers(10, 0) ' エラー: 0で割ることはできません

ここでDivideByZeroExceptionは「0で割ろうとしたときの例外」です。Catchでその種類を指定して処理できます。

3. 複数の例外を処理する

3. 複数の例外を処理する
3. 複数の例外を処理する

複数の例外が考えられる場合は、Catchを連続して書くこともできます。


Sub ReadFile(filePath As String)
    Try
        Dim content As String = System.IO.File.ReadAllText(filePath)
        Console.WriteLine(content)
    Catch ex As System.IO.FileNotFoundException
        Console.WriteLine("エラー: ファイルが見つかりません")
    Catch ex As Exception
        Console.WriteLine("予期せぬエラーが発生しました: " & ex.Message)
    End Try
End Sub

ReadFile("test.txt") ' ファイルが存在しなければエラー処理される

このように特定の例外と一般的な例外を分けて処理することで、安全性が高まります。

4. Finallyブロックの使い方

4. Finallyブロックの使い方
4. Finallyブロックの使い方

Finallyブロックは、例外が発生してもしなくても必ず実行される部分です。例えば、ファイルを開いたあとに必ず閉じたい場合に使います。


Sub ReadFileWithFinally(filePath As String)
    Dim reader As System.IO.StreamReader = Nothing
    Try
        reader = New System.IO.StreamReader(filePath)
        Console.WriteLine(reader.ReadToEnd())
    Catch ex As Exception
        Console.WriteLine("エラーが発生しました: " & ex.Message)
    Finally
        If reader IsNot Nothing Then reader.Close()
        Console.WriteLine("ファイルを閉じました")
    End Try
End Sub

この例では、例外の有無にかかわらず必ずファイルを閉じる処理が行われます。

5. 例外処理のポイントと注意点

5. 例外処理のポイントと注意点
5. 例外処理のポイントと注意点
  • 例外処理は必要な箇所だけに使い、乱用すると可読性が下がる
  • Catchではできるだけ具体的な例外を指定する
  • Finallyはリソース解放など必ず行う処理に使う
  • 例外処理を使っても、根本的なバグは修正することが大切

VB.NETのメソッドで例外処理を適切に使うことで、プログラムの安全性と信頼性を大幅に向上させることができます。

カテゴリの一覧へ
新着記事
New1
VB.NET
VB.NETの例外処理でよくあるアンチパターンと注意点を初心者向けに徹底解説
New2
ASP.NET
ASP.NET WebFormsのGridViewでデータ表示を完全マスター!初心者向けガイド
New3
VB.NET
VB.NETの例外処理とパフォーマンスの関係を初心者向けに完全解説
New4
ASP.NET
ASP.NET WebFormsでデータベースと連携!初心者でもできる保存と表示の基本
人気記事
No.1
Java&Spring記事人気No1
VB.NET
VB.NETのEnum(列挙型)の使い方を完全解説!初心者にも分かる定義と活用方法
No.2
Java&Spring記事人気No2
VB.NET
VB.NETのBoolean型(True/False)の使い方と条件分岐での活用方法を徹底解説!初心者でも理解できる基本
No.3
Java&Spring記事人気No3
VB.NET
VB.NETのIf文の使い方と条件分岐を完全ガイド!初心者でもわかる基本構文と実例
No.4
Java&Spring記事人気No4
VB.NET
VB.NETの配列(Array)の作り方と基本操作を徹底解説!初心者でもわかる入門ガイド
No.5
Java&Spring記事人気No5
VB.NET
VB.NETプログラムの実行方法まとめ!Visual Studio・コマンドラインの使い方
No.6
Java&Spring記事人気No6
VB.NET
VB.NETの例外処理を完全ガイド!初心者でもわかるSystem.Exceptionの仕組み
No.7
Java&Spring記事人気No7
VB.NET
VB.NETのコンストラクタと初期化処理の書き方を初心者向けに解説
No.8
Java&Spring記事人気No8
VB.NET
VB.NETでの変数名の付け方とは?わかりやすくエラーの起きにくい命名規則を紹介