カテゴリ: VB.NET 更新日: 2026/03/27

VB.NETのメソッドをクラスに定義する方法を初心者向けに解説

VB.NETのメソッドをクラスに定義する方法
VB.NETのメソッドをクラスに定義する方法

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

生徒

「先生、VB.NETでクラスの中にメソッドを作るにはどうしたらいいですか?」

先生

「クラスにメソッドを定義することで、そのクラスのオブジェクトに特定の動作をさせることができます。」

生徒

「メソッドって具体的には何ですか?」

先生

「メソッドは、ある処理や計算をまとめた命令の集まりです。たとえば、人を表すクラスに '挨拶する' 動作を持たせるとき、その動作をメソッドとして定義します。」

1. クラスにメソッドを定義する基本構文

1. クラスにメソッドを定義する基本構文
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. オブジェクトでメソッドを呼び出す

2. オブジェクトでメソッドを呼び出す
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. 引数付きのメソッド

3. 引数付きのメソッド
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. メソッドの設計のポイント

4. メソッドの設計のポイント
4. メソッドの設計のポイント
  • 一つのメソッドで一つの処理を担当させる
  • 値を返す場合はFunction、返さない場合はSubを使う
  • 引数で必要な情報を受け取り、結果を返すことで再利用性が高まる
  • クラスのオブジェクトと密接に関連する処理をメソッドとしてまとめる

これらを意識することで、VB.NETでクラス設計が整理され、保守性の高いプログラムを書けるようになります。

5. 初心者向けの例え

5. 初心者向けの例え
5. 初心者向けの例え

クラスは「設計図」、オブジェクトは「家」、メソッドは「家の中でできる動作」と考えるとわかりやすいです。家(オブジェクト)を作って、ドアを開ける、電気をつけるなどの動作(メソッド)を実行するイメージです。

まとめ

まとめ
まとめ

本記事では、VB.NETにおけるクラスとメソッドの基本から応用までを丁寧に振り返りました。クラスはプログラムの設計図としての役割を持ち、その中に定義されるメソッドは具体的な処理や振る舞いを表現する重要な要素です。SubとFunctionの違いを理解することで、値を返す処理と返さない処理を適切に使い分けることができ、より実用的で読みやすいコードを書くことが可能になります。

また、オブジェクトを生成してからメソッドを呼び出すという流れは、オブジェクト指向プログラミングの基本であり、VB.NETの学習において避けて通れない重要な概念です。オブジェクトを通じてメソッドを実行することで、クラスの機能を実際の処理として活用できるようになります。この流れをしっかり理解しておくことで、より大規模なアプリケーション開発にも対応できる力が身につきます。

引数付きメソッドについても重要なポイントです。同じメソッドでも引数を変えることで異なる結果を得られるため、柔軟で再利用性の高いコードを実現できます。例えば名前を受け取って挨拶するメソッドは、どのユーザーにも対応できる汎用的な処理として活用できます。このような設計は、実務でも非常に重要です。

さらに、メソッド設計のポイントとして、一つのメソッドには一つの役割を持たせること、適切な戻り値を設計すること、必要な情報は引数として受け取ることが挙げられます。これらを意識することで、コードの可読性が向上し、バグの少ない安定したプログラムを作ることができます。

VB.NETのクラスとメソッドの理解は、オブジェクト指向プログラミングの基礎そのものです。初心者のうちは少し難しく感じるかもしれませんが、実際にコードを書いて動かしてみることで理解が深まります。特にメソッドの使い方に慣れると、処理を分割して整理する力が身につき、プログラム全体の構造が見えやすくなります。

サンプルプログラムで総復習


Public Class Person
    Public Sub Greet()
        Console.WriteLine("こんにちは!")
    End Sub

    Public Function GetGreeting() As String
        Return "こんにちは、私はVB.NETです"
    End Function

    Public Sub GreetWithName(name As String)
        Console.WriteLine("こんにちは、" & name & "さん!")
    End Sub
End Class

Module Module1
    Sub Main()
        Dim p As New Person()

        p.Greet()

        Dim msg As String = p.GetGreeting()
        Console.WriteLine(msg)

        p.GreetWithName("花子")
    End Sub
End Module

こんにちは!
こんにちは、私はVB.NETです
こんにちは、花子さん!
先生と生徒の振り返り会話

生徒

クラスの中にメソッドを書くことで、そのクラスの役割がはっきりするんですね。

先生

その通りです。クラスは設計図、メソッドはその設計図の中にある具体的な動きです。整理して書くことで読みやすいコードになります。

生徒

SubとFunctionの違いも重要ですね。値を返すかどうかで使い分けるんでしたね。

先生

はい。戻り値が必要な場合はFunction、処理だけならSubと覚えておくと良いでしょう。

生徒

引数を使うと同じメソッドでも色々な使い方ができるのが便利だと感じました。

先生

その気づきはとても大切です。引数を活用することで再利用性が高まり、効率的なプログラムになります。

生徒

これからは一つのメソッドに一つの役割を意識して書いてみます。

先生

良いですね。その意識があるだけでコードの質は大きく向上します。少しずつ実践して身につけていきましょう。

関連記事:
カテゴリの一覧へ
新着記事
New1
VB.NET
VB.NETの変数とは?初心者向けに定義方法とよく使うデータ型を解説
New2
ASP.NET
ASP.NET MVCでモデルを定義してデータを扱う方法を初心者向けに解説
New3
ASP.NET
ASP.NETのマイグレーションを使ったスキーマ管理方法を完全解説!初心者でも安心
New4
ASP.NET
MacでASP.NET開発を始める方法|初心者向けにVisual Studioと.NET SDKを解説
人気記事
No.1
Java&Spring記事人気No1
ASP.NET
ASP.NETとは?初心者向けにできることと特徴をやさしく解説
No.2
Java&Spring記事人気No2
ASP.NET
ASP.NET WebFormsとは?基本概念と仕組みを初心者向けにやさしく解説
No.3
Java&Spring記事人気No3
VB.NET
VB.NETで日付を文字列に変換!ToStringやFormatの使い方を徹底解説
No.4
Java&Spring記事人気No4
VB.NET
VB.NETプログラムの書き方を基礎から学ぼう!初心者が覚えるべき文法とは?
No.5
Java&Spring記事人気No5
VB.NET
VB.NETで日付を加算・減算する方法を完全ガイド!AddDaysやAddMonthsの使い方
No.6
Java&Spring記事人気No6
VB.NET
VB.NETの配列(Array)の作り方と基本操作を徹底解説!初心者でもわかる入門ガイド
No.7
Java&Spring記事人気No7
VB.NET
VB.NETで日付と時間を比較・計算する方法!CompareとSubtractを完全解説
No.8
Java&Spring記事人気No8
VB.NET
VB.NETのインストール方法まとめ!Visual Studioを使った環境構築手順