(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
 
												Destructor in three levels
Class A
    Public Sub New()
        Console.WriteLine("In class A constructor")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("In class A destructor")
        MyBase.Finalize()
    End Sub
End Class
Class B
    Inherits A
    Public Sub New()
        Console.WriteLine("In class B constructor")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("In class B destructor")
        MyBase.Finalize()
    End Sub
End Class
Class C
    Inherits B
    Public Sub New()
        Console.WriteLine("In class C constructor")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("In class C destructor")
        MyBase.Finalize()
    End Sub
End Class
Module Module1
    Sub Main()
        Dim objSample As New C()
    End Sub
End Module 
In class A constructor
In class B constructor
In class C constructor
In class C destructor
In class B destructor
In class A destructor
Inherit destructor
Class Base
    Public Sub New()
        Console.WriteLine("The Base Class Constructor is Running")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("The Base Class Destructor is Running")
        MyBase.Finalize()
    End Sub
End Class
Class Derived
    Inherits Base
    Public Sub New()
        Console.WriteLine("The Derived Class Constructor is Running")
    End Sub
    Protected Overrides Sub Finalize()
        Console.WriteLine("The Derived Class Destructor is Running")
        MyBase.Finalize()
    End Sub
End Class
Module Module1
    Sub Main()
        Dim Sample As New Derived()
    End Sub
End Module 
The Base Class Constructor is Running
The Derived Class Constructor is Running
The Derived Class Destructor is Running
The Base Class Destructor is Running