Public Class TheBaseClass
Public Overridable Sub SomeMethod()
'Do something here.
End Sub
End Class
Public Class TheDerivedClass
Inherits TheBaseClass
Public Overrides Sub SomeMethod()
'Do pre-processing here if required.
'Call the base implementation.
MyBase.SomeMethod()
'Do post-processing here if required.
End Sub
End Class
Public Interface IGreeting
Sub SayHello(ByVal name As String)
End Interface
Public Class EnglishGreeting
Implements IGreeting
Public Sub SayHello(ByVal name As String) Implements IGreeting.Greet
MessageBox.Show("Hello " & name)
End Sub
End Class
Public Structure FrenchGeeting
Implements IGreeting
Private dummy As Object
Public Sub SayBonjour(ByVal name As String) Implements IGreeting.Greet
MessageBox.Show("Bonjour " & name)
End Sub
End Structure
Public Sub DisplayGeeting(ByVal greeting As IGreeting, ByVal name As String)
greeting.Greet(name)
End Sub
Dim eg As New EnglishGreeting
Dim fg As New FrenchGeeting
DisplayGeeting(eg, "John")
DisplayGeeting(fg, "John")