I suppose I need an OO-101 remedial course, or something.
I would have expected, or hoped, that
Console.WriteLine(Bee(d))
would have printed "Derived1"; not "Base1"..
I'm sure this is an easy thing to accomplish?
Module Module1
Public Class Base1
Public ReadOnly Property Result() As String
Get
Return "Base1"
End Get
End Property
End Class
Public Class Derived1
Inherits Base1
Public Shadows ReadOnly Property Result() As String
Get
Return "Derived1"
End Get
End Property
End Class
Public Sub main()
Dim d As New Derived1
Console.WriteLine(Dee(d))
Console.WriteLine(Bee(d))
End Sub
Public Function Dee(ByVal d As Derived1) As String
Return d.Result
End Function
Public Function Bee(ByVal b As Base1) As String
Return b.Result
End Function
End Module