VB.NETのメソッドをクラスに定義する方法を初心者向けに解説
先生と生徒の会話形式で理解しよう
生徒
「先生、VB.NETでクラスの中にメソッドを作るにはどうしたらいいですか?」
先生
「クラスにメソッドを定義することで、そのクラスのオブジェクトに特定の動作をさせることができます。」
生徒
「メソッドって具体的には何ですか?」
先生
「メソッドは、ある処理や計算をまとめた命令の集まりです。たとえば、人を表すクラスに '挨拶する' 動作を持たせるとき、その動作をメソッドとして定義します。」
1. クラスにメソッドを定義する基本構文
VB.NETでは、クラス内にSubまたはFunctionを使ってメソッドを定義します。Subは値を返さない処理、Functionは値を返す処理です。
Public Class Person
' Sub メソッド:値を返さない
Public Sub Greet()
Console.WriteLine("こんにちは!")
End Sub
' Function メソッド:値を返す
Public Function GetGreeting() As String
Return "こんにちは、私はVB.NETです"
End Function
End Class
このように定義すると、Personクラスのオブジェクトを使ってメソッドを呼び出せます。
2. オブジェクトでメソッドを呼び出す
クラスに定義したメソッドは、まずオブジェクトを作ってから呼び出します。オブジェクトはクラスの実体で、メソッドを使うためにはこのオブジェクトが必要です。
Module Module1
Sub Main()
Dim person1 As New Person()
' Subメソッドの呼び出し
person1.Greet()
' Functionメソッドの呼び出し
Dim message As String = person1.GetGreeting()
Console.WriteLine(message)
End Sub
End Module
こんにちは!
こんにちは、私はVB.NETです
このように、オブジェクトを通じてクラスに定義したメソッドを利用できます。
3. 引数付きのメソッド
メソッドには引数を渡して、処理に必要なデータを受け取ることができます。これにより、より柔軟な動作を実現できます。
Public Class Person
Public Sub GreetWithName(name As String)
Console.WriteLine("こんにちは、" & name & "さん!")
End Sub
End Class
呼び出し例:
Dim person2 As New Person()
person2.GreetWithName("太郎")
こんにちは、太郎さん!
引数を使うことで、メソッドはさまざまな状況に応じて動作できるようになります。
4. メソッドの設計のポイント
- 一つのメソッドで一つの処理を担当させる
- 値を返す場合は
Function、返さない場合はSubを使う - 引数で必要な情報を受け取り、結果を返すことで再利用性が高まる
- クラスのオブジェクトと密接に関連する処理をメソッドとしてまとめる
これらを意識することで、VB.NETでクラス設計が整理され、保守性の高いプログラムを書けるようになります。
5. 初心者向けの例え
クラスは「設計図」、オブジェクトは「家」、メソッドは「家の中でできる動作」と考えるとわかりやすいです。家(オブジェクト)を作って、ドアを開ける、電気をつけるなどの動作(メソッド)を実行するイメージです。