今回はVB.NETを使用してInterfaceの使用方法を学びます。

Interfaceを使用することによってのメリットはクラスを作成した人とクラスを利用する人との取り決めができるようなイメージですかね。

よくわからないのでやってみましょーーーwwww

 

まず流れとしては三点あります。

①Interfaceを定義


②実装をクラスを作成


③利用クラス
実際に利用するのは実装しているクラス②のインスタンスを作成するイメージです


まず①のInterfaceを定義しましょう。
ここでは変数のみの説明とします。クラスの上に以下のように記述します。

Interface IF1
    Property firstName As String
    Property lastName As String
End Interface

これだけで①は終わりですwwかなりあっさりですね
そのまま次②行きます。
Interface IF1 を実装するクラスを作成します。Interfaceの下に以下のように記述します。


Class IMPIF1
    Implements IF1
    Private firstNameValue As String
    Private lastNameValue As String
    Public Property firstName As String Implements IF1.firstName
        Get
            Return firstNameValue
        End Get
        Set(value As String)
            firstNameValue = value
        End Set
    End Property

    Public Property lastName As String Implements IF1.lastName
        Get
            Return lastNameValue
        End Get
        Set(value As String)
            lastNameValue = value
        End Set
    End Property
End Class

簡単に説明すると、GetはPrivate変数を安全に呼び出し元に返してあげます。SetはPrivate変数を安全に格納します。
Implementsが実装していることを表しています。

③番目は実際に存在しているクラスで作成します。
例としてWindowがLoad時のイベントハンドラーに記述しているものとします。


Class MainWindow
    Private Sub Grid_Loaded(sender As Object, e As RoutedEventArgs)
        Dim test1 As IF1 = New IMPIF1                        '※1
        test1.firstName = "東京"                            '※2
        test1.lastName = "太郎"                                '※3
    End Sub
End Class

 

※1

→"test1" というIF1を実装したIMPIF1のクラスのインスタンスを生成

※2

→test1からfirstNameに"東京"を格納(SetPropertyでfirstNameValueに格納される)

※3

→test1からlastNameに"東京"を格納(SetPropertyでlastNameValueに格納される)

 

 

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

いかがでしたでしょうか?

InterfaceにSubとかを記述したりEventとかも追加できますのでまた載せてみよう思います。

よい一日を~