Imports System
Interface Printable
Sub Read( )
Sub Write(ByVal obj As Object)
Property Status( ) As Integer
End Interface
Interface Zippable
Sub Zip( )
Sub Unzip( )
End Interface
Public Class Document
Implements Printable
Public Sub New(ByVal s As String)
Console.WriteLine("Creating document with: {0}", s)
End Sub
Public Sub Read( ) Implements Printable.Read
Console.WriteLine("Implementing the Read Method for Printable")
End Sub
Public Sub Write(ByVal o As Object) Implements Printable.Write
Console.WriteLine("Implementing the Write Method for Printable")
End Sub 'Write
Public Property Status( ) As Integer Implements Printable.Status
Get
Return Status
End Get
Set(ByVal Value As Integer)
Status = Value
End Set
End Property
Private myStatus As Integer = 0
End Class 'Document
Class Tester
Public Sub Run( )
End Sub 'Run
Shared Sub Main( )
Dim doc As New Document("Test Document")
If TypeOf doc Is Printable Then
Dim isDoc As Printable = doc
isDoc.Read( )
Else
Console.WriteLine("Could not cast to Printable")
End If
If TypeOf doc Is Zippable Then
Dim icDoc As Zippable = doc
icDoc.Zip( )
Else
Console.WriteLine("Could not cast to Zippable")
End If
End Sub 'Main
End Class
Creating document with: Test Document
Implementing the Read Method for Printable
Could not cast to Zippable