所以我现在有
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方法能够返回列表的两个变体,具体取决于实现类。
答案 0 :(得分: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