我在VB.NET中有一个抽象类。我希望从这个类继承的所有类都返回任何有意义的值。例如,它可以是Decimal,Integer,String。如何对抽象基类中的函数进行delcare以实现此目的?这甚至可能吗?
现在,我的抽象类看起来像这样:
Public MustInherit Class ConversionBaseClass
Public MustOverride Function GetConvertedObject()
End Class
我知道它的返回值需要修改,但我不确定是什么。这样的事可能吗?
Public MustOverride Function GetConvertedObject() Of (T)
答案 0 :(得分:5)
Public MustOverride Function GetConvertedObject(Of T)() As T
应该这样做。
答案 1 :(得分:2)
使Base类成为T的泛型,然后您可以将它用于方法
Public MustInherit Class ConversionBaseClass (Of T)
Public MustOverride Function GetConvertedObject() As T
End Class
然后定义继承类,如
public Class IntConversion Inherits ConversionBaseClass(Of Integer)
Public Overrides Function GetConvertedObject() As Integer