今回は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とかも追加できますのでまた載せてみよう思います。
よい一日を~