Mega Code Archive

 
Categories / VB.Net Tutorial / Class Module
 

Overrides and Shadows methods from base class

Option Strict On  Imports System  Imports Microsoft.VisualBasic  Interface Printable      Sub Read( )      Sub Write( )  End Interface  Public Class Document : Implements Printable      Public Sub New(ByVal s As String)          Console.WriteLine("Creating document with: {0}", s)      End Sub      Public Overridable Sub Read( ) Implements Printable.Read          Console.WriteLine("Document Virtual Read Method for Printable")      End Sub      Public Sub Write( ) Implements Printable.Write          Console.WriteLine("Document Write Method for Printable")      End Sub  End Class  Public Class Note : Inherits Document      Public Sub New(ByVal s As String)          MyBase.New(s)          Console.WriteLine("Creating note with: {0}", s)      End Sub      Public Overrides Sub Read( )          Console.WriteLine("Overriding the Read method for Note!")      End Sub      Public Shadows Sub Write( )          Console.WriteLine("Implementing the Write method for Note!")      End Sub  End Class  Class Tester      Public Shared Sub Main( )          Dim theNote As Document = New Note("Test Note")          If TypeOf theNote Is Printable Then              Dim isNote As Printable = theNote              isNote.Read( )              isNote.Write( )          End If          Console.WriteLine(vbCrLf)          theNote.Read( )          theNote.Write( )          Console.WriteLine(vbCrLf)          Dim note2 As New Note("Second Test")          If TypeOf note2 Is Printable Then              Dim isNote2 As Printable = note2              isNote2.Read( )              isNote2.Write( )          End If          Console.WriteLine(vbCrLf)          note2.Read( )          note2.Write( )      End Sub  End Class Creating document with: Test Note Creating note with: Test Note Overriding the Read method for Note! Document Write Method for Printable Overriding the Read method for Note! Document Write Method for Printable Creating document with: Second Test Creating note with: Second Test Overriding the Read method for Note! Document Write Method for Printable Overriding the Read method for Note! Implementing the Write method for Note!