(P.275)

コンストラクターのパラメータの数や型が異なれば、

1つのクラスの中に複数のコンストラクターで定義できます。

これをコンストラクターのオーバーロード(多重定義)と呼びます。

コンストラクターのオーバーロードを使うには、

次のいずれかの条件を満たしていることが必要です。

 

l  コンストラクターのオーバーロードにおける条件

l  パラメータの数が異なる

l  パラメータの並び順が異なる

l  パラメータの型が異なる

 

プロジェクト(OverloadConstractor)

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

Public Class Form1

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

        Dim obj1 As New SetNumber(11, 22, 33.405)

        Dim obj2 As New SetNumber(20)

        Dim obj3 As New SetNumber(11.55)

        MessageBox.Show("numA = " & obj1.numA & ", " & "numB = " & obj1.numB & ", " & "numC = " & obj1.numC)

        MessageBox.Show("numA = " & obj2.numA & ", " & "numB = " & obj2.numB & ", " & "numC = " & obj2.numC)

        MessageBox.Show("numA = " & obj3.numA & ", " & "numB = " & obj3.numB & ", " & "numC = " & obj3.numC)

    End Sub

End Class

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

 

クラス(SetNumber)

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

Public Class SetNumber

    Public numA As Integer

    Public numB As Integer

    Public numC As Double

 

    Public Sub New(a As Integer, b As Integer, c As Double)

        numA = a

        numB = b

        numC = c

    End Sub

 

    Public Sub New(a As Integer)

        numA = a

        numB = 10

        numC = 1.234

    End Sub

 

    Public Sub New(c As Double)

        numA = 500

        numB = 10

        numC = c

    End Sub

End Class

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