すたぁへなちょこ

新社会人研修生プログラマーの備忘録みたいなやつ

エラーチェッククラスの作り方

ゆーです、どうもです。

今日はエラーチェッククラスを作ったとして、どうやったらメインのクラス(今回の僕はVBでのフォームアプリケーション作成なのでフォーム)のエラーチェックオブジェクトにエラーをキャッチしてもらったときに処理を中断させるかについての備忘録。

簡単に行っちゃえばThrowを使おうねって話でした。

 

'テキストボックスには数字しか入力できず、それ以外を入力してボタンを押下するとエラーがでる画面

Public Class Form1
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

        Dim test1 As New Class1

            Try

        'エラーチェッククラスの数字チェックメソッド
                test1.IntErrorCheck(TextBox1.Text)
        
                '数字を入力するとこっちが表示される。
                MessageBox.Show("goal")
   
            Catch
        'errorをエラーチェッククラスでキャッチしていた場合こっちが表示される。
                MessageBox.Show("error")
            End Try

    End Sub
End Class

------------------------------------------------------------

Public Class Class1
    Public Sub IntErrorCheck(ByVal checkObj As String)

        Try
            '入力された値が数値に変換できるか
            Integer.Parse(checkObj)

        Catch ex As Exception 
            'ここでスローを投げないとフォームにエラーが伝わらない
            Throw
        End Try
    End Sub
End Class


Javaの研修でやったんだけどどうしたらできたか忘れちゃったのでかるーく調べて今日即興でコード書いてみました。
参考にするというかそもそもこんなブログ見てる人がいるかは置いといて、数値チェックだとかはもっと確実な方法があると思うのであくまでthrowの使い方だけの参考ということで。

あとはフォーム(メインクラス)のCatch節にしっかりExceptionの内容書いて複数に増やしたらいろいろなエラーに対応できるはず。
エラーチェッククラスとthrowの使い方はJavaで学んだので大まかなところはそのままJavaでも使えるしC#でも使える。たぶん。