CType a Class : Class Type « Class « VB.Net






CType a Class

CType a Class
Imports System
Imports System.Collections

Public Class MainClass
    
    Shared Sub Main(ByVal args As String())
        Dim employees As New Collection
        employees.Add(New Employee("A"))
        employees.Add(New Manager("B"))
        employees.Add(New Manager("C"))
        employees.Add(New Employee("D"))
        ShowEmployees(employees)

        ' Works.
        Dim emp As Employee
        For i As Integer = employees.Count To 1 Step -1
            emp = CType(employees(i), Employee)
            If emp.IsManager Then employees.Remove(i)
        Next i
        ShowEmployees(employees)

    End Sub

    Shared Private Sub ShowEmployees(ByVal employees As Collection)
        For Each emp As Employee In employees
            Console.WriteLine( emp.Name & vbCrLf )
        Next emp
    End Sub

End Class



Public Class Employee
    Public Name As String

    Public Sub New(ByVal new_name As String)
        Name = new_name
    End Sub

    Public Overridable Function IsManager() As Boolean
        Return False
    End Function
End Class
Public Class Customer
    Public Name As String

    Public Sub New(ByVal new_name As String)
        Name = new_name
    End Sub
End Class
Public Class Manager
    Inherits Employee

    Public Sub New(ByVal new_name As String)
        MyBase.new(new_name)
    End Sub
    Public Overrides Function IsManager() As Boolean
        Return True
    End Function
End Class
           
       








Related examples in the same category

1.Check Class Type in For each LoopCheck Class Type in For each Loop