public class Test
public Shared Sub Main
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"))
For Each emp As Employee In employees
Console.WriteLine(emp.Name)
Next emp
For i As Integer = employees.Count To 1 Step -1
Dim emp As Employee = CType(employees(i), Employee)
If emp.IsManager Then employees.Remove(i)
Next i
For Each emp As Employee In employees
Console.WriteLine(emp.Name)
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
|