Overloads Shadows Overrides vb .net

Hallo zusammen,
mir scheint Overloads hat ähnlichen
Effekt wie Shadows.

Jedenfalls in meinem kleinen Beispiel ist keine Unterschied feststellbar:

Public Class Class1
Private newPropertyValue As Integer = 4
Sub test()
'ReadOnly b As Integer

End Sub
Public Function f() As Integer
Return 1
End Function

End Class
Public Class Class2
Inherits Class1
’ Overloads scheint erst mal wie Shadows
’ Overrides brucht auf anderers Seite Overridable
Public Function f(ByVal da As Int16) As Integer
Return 2
End Function
End Class

Public Class Class1
 Public Function f() As Integer
 Return 1
 End Function
End Class
Public Class Class2
 Inherits Class1
 ' Overloads scheint erst mal wie Shadows
 ' Overrides brucht auf anderers Seite Overridable
 Public Function f(ByVal da As Int16) As Integer
 Return 2
 End Function
End Class
...
 Sub Main()
 MsgBox(c1.f) ' 1
 MsgBox(c2.f(1)) ' 1
 End Sub

Danke und Gruß
Sebastian

Ich hab ein Beispiel geschrieb
Hi all, folgendes beantwortet wohl die Fragen:

Public Class Class2
 Inherits Class1
 Shadows Sub MethodA()
 go("A", "2", "Shadows")
 End Sub
 Overrides Sub MethodB()
 ' nimmt Methode des Instanz-Typs
 go("B", "2", "Overrides")
 End Sub
 Sub MethodC()
 ' nimmt Methode des Instanz-Typs
 go("C", "2")
 End Sub
 Sub MethodD()
 go("D", "2")
 End Sub
End Class
Public Class Class1
 Function go(ByRef m As String, ByRef c As String, Optional ByRef kommentar As String = "") As String
 Dim temp As String
 temp = CStr(IIf(c = "2", " LateBinding ", ""))
 Console.WriteLine("" & m & " " & "" & c & " " & temp & " " & kommentar)
 Return ""
 End Function
 Sub MethodA()
 go("A", "1")
 End Sub
 Overridable Sub MethodB()
 ' nimmt Methode des Instanz-Typs
 go("B", "1", "Overridable")
 End Sub
 Sub MethodC()
 ' nimmt Methode des Instanz-Typs
 go("C", "1")
 End Sub
 Shadows Sub MethodD()
 go("D", "2", "Shadows")
 End Sub
End Class




Module Module1
 Sub Main()
 Dim C1 As Class1
 C1 = New Class2
 Console.WriteLine("Dim C1 As Class1")
 Console.WriteLine("C1 = New Class2")
 Console.WriteLine("")
 C1.MethodA() ' Class1 called
 C1.MethodB() ' Class2 called
 C1.MethodC() ' Class2 called
 C1.MethodD() ' Class2 called
 Console.ReadKey()
 End Sub
End Module

Gruß
Sebastian