0

だから私は現在持っています

class general
private list as List(Of string) 

public overridable function getprivateList as <not sure what to put>
    return list
end function
end class

class specific inherits general
private list as List(Of listofstrings)

end class

しかし、私はインターフェースとして何を使うべきか理解できません。そのため、メソッドgetprivateListは、実装のクラスに応じて、リストの両方のバリエーションを返すことができます。

4

1 に答える 1

2

IEnumerable、、、ICollectionまたはを返すことができIListます。 IEnumerable機能IListが最も少なく、最も多くなります。

Class General
    Private list As List(Of String) 

    Public Overridable Function GetPrivateList() As IList
        Return list
    End Function
End Class

Class Specific 
    Inherits General
    Private list As List(Of Integer)
End Class

または、基本クラスを、リストアイテムのタイプをとるジェネリッククラスとして定義することもできます。

Class General(Of T)
    Private list As List(Of T) 

    Public Overridable Function GetPrivateList() As List(Of T)
        Return list
    End Function
End Class

Class Specific 
    Inherits General(Of Integer)
End Class
于 2012-09-18T12:01:26.330 に答える