[VB.NET]インターフェースが他のインターフェースを継承するサンプル
書式
Public Interface インターフェース2
Inherits インターフェース1
'抽象メソッド
Function getAddr()
End Interface
Public Interface インターフェース2
Inherits インターフェース1
'抽象メソッド
Function getAddr()
End Interface
Public Interface インターフェース2 Inherits インターフェース1 '抽象メソッド Function getAddr() End Interface
使用例
Module Module1
'インターフェースAの定義
Public Interface UserItA
'抽象メソッド
Function getName()
End Interface
'インターフェースBがインターフェースAを継承
Public Interface UserItB
Inherits UserItA
'抽象メソッド
Function getAddr()
End Interface
'クラスUserMの定義
Public Class UserM
Implements UserItB
'抽象メソッドgetNameをオーバーライド
Public Function getName() As Object Implements UserItA.getName
Return "名前:山田 太郎"
End Function
'抽象メソッドgetAddrをオーバーライド
Public Function getAddr() As Object Implements UserItB.getAddr
Return "出身:東京 品川区"
End Function
End Class
Sub Main()
'インスタンスを生成
Dim usrA As New UserM()
'String型変数の宣言
Dim res As String
'String型変数の宣言
Dim res2 As String
'クラスのメソッドを呼び出す
res = usrA.getName
Console.WriteLine(res)
'クラスのメソッドを呼び出す
res2 = usrA.getAddr
Console.WriteLine(res2)
Console.ReadKey()
End Sub
End Module
Module Module1
'インターフェースAの定義
Public Interface UserItA
'抽象メソッド
Function getName()
End Interface
'インターフェースBがインターフェースAを継承
Public Interface UserItB
Inherits UserItA
'抽象メソッド
Function getAddr()
End Interface
'クラスUserMの定義
Public Class UserM
Implements UserItB
'抽象メソッドgetNameをオーバーライド
Public Function getName() As Object Implements UserItA.getName
Return "名前:山田 太郎"
End Function
'抽象メソッドgetAddrをオーバーライド
Public Function getAddr() As Object Implements UserItB.getAddr
Return "出身:東京 品川区"
End Function
End Class
Sub Main()
'インスタンスを生成
Dim usrA As New UserM()
'String型変数の宣言
Dim res As String
'String型変数の宣言
Dim res2 As String
'クラスのメソッドを呼び出す
res = usrA.getName
Console.WriteLine(res)
'クラスのメソッドを呼び出す
res2 = usrA.getAddr
Console.WriteLine(res2)
Console.ReadKey()
End Sub
End Module
Module Module1 'インターフェースAの定義 Public Interface UserItA '抽象メソッド Function getName() End Interface 'インターフェースBがインターフェースAを継承 Public Interface UserItB Inherits UserItA '抽象メソッド Function getAddr() End Interface 'クラスUserMの定義 Public Class UserM Implements UserItB '抽象メソッドgetNameをオーバーライド Public Function getName() As Object Implements UserItA.getName Return "名前:山田 太郎" End Function '抽象メソッドgetAddrをオーバーライド Public Function getAddr() As Object Implements UserItB.getAddr Return "出身:東京 品川区" End Function End Class Sub Main() 'インスタンスを生成 Dim usrA As New UserM() 'String型変数の宣言 Dim res As String 'String型変数の宣言 Dim res2 As String 'クラスのメソッドを呼び出す res = usrA.getName Console.WriteLine(res) 'クラスのメソッドを呼び出す res2 = usrA.getAddr Console.WriteLine(res2) Console.ReadKey() End Sub End Module
実行結果
名前:山田 太郎
出身:東京 品川区